原文地址:"Implementing" a non-public interface in .NET Core with DispatchProxy 原文作者:Filip W. 译文地址:https://www.cnblogs.com/lwqlun/p/11575686.html 译者:Lamond Lu 简介 反射是.NET中一个非常强大的概念,对于每一个C#开发人员来说,迟早都会使用到这个它.在许多场景中,反射都非常有用,例如程序集扫描,类型发现或者各种程序组合使用. 然而,它经常…
在企业开发中,我们经常会遇到由用户上传文件的场景,比如某OA系统中,由用户填写某表单并上传身份证,由身份管理员审查,超级管理员可以查看. 就这样一个场景,用户上传的文件只能有三种人看得见(能够访问) 上传文件的人 身份审查人员 超级管理员 那么,这篇博客中我们将一起学习如何设计并实现一款文件授权中间件 问题分析 如何判断文件属于谁 要想文件能够被授权,文件的命名就要有规律,我们可以从文件命名中确定文件是属于谁的,例如本文例可以设计文件名为这样 工号-GUID-[Front/Back] 例如: 1…
  写在前面 开发.NET Core应用,直接映入眼帘的就是Startup类和Program类,它们是.NET Core应用程序的起点.通过使用Startup,可以配置化处理所有向应用程序所做的请求的管道,同时也可以减少.NET应用程序对单一服务器的依赖性,使我们在更大程度上专注于面向多服务器为中心的开发模式. 目录: Startup讨论 Starup所承担的角色 Startup编写规范 ConfigureServices Configure 扩展Startup方法 深入源码查看Startup是…
简介 日志组件,作为程序员使用频率最高的组件,给程序员开发调试程序提供了必要的信息.ASP.NET Core中内置了一个通用日志接口ILogger,并实现了多种内置的日志提供器,例如 Console Debug EventSource EventLog TraceSource Azure App Service 除了内置的日志提供器,ASP.NET Core还支持了多种第三方日志工具,例如 elmah.io Gelf JSNLog KissLog.net Loggr NLog Serilog 开…
在采用了依赖注入的应用中,我们总是直接利用DI容器直接获取所需的服务实例,换句话说,DI容器起到了一个服务提供者的角色,它能够根据我们提供的服务描述信息提供一个可用的服务对象.ASP.NET Core中的DI容器体现为一个实现了IServiceProvider接口的对象. ServiceProvider与ServiceDescriptor服务的注册与提供    利用ServiceProvider来提供服务    提供一个服务实例的集合    获取ServiceProvider自身对象    对泛…
原文:Globalization and localization 作者:Rick Anderson.Damien Bowden.Bart Calixto.Nadeem Afana 翻译:谢炀(Kiler) 校对:许登洋(Seay).高嵩 使用 ASP.NET Core 创建一个多语言版本的网站有助于你吸引到更多的用户,ASP.NET Core 提供服务和中间件来支持本地化语言和文化. 国际化涉及 全球化 和 本地化.全球化是为了应用程序支持不同文化而设计的.全球化增加了对特定地理区域的语言文字…
原文: Working with Multiple Environments 作者: Steve Smith 翻译: 刘浩杨 校对: 孟帅洋(书缘) ASP.NET Core 介绍了支持在多个环境中管理应用程序行为的改进,如开发(development),预演(staging)和生产(production).环境变量用来指示应用程序正在运行的环境,允许应用程序适当地配置. 章节: 开发,预演,生产 在运行时确定环境 启动约定 概要 附加资源 查看或下载示例代码 开发,预演,生产 ASP.NET…
原文:Hosting 作者:Steve Smith 翻译:娄宇(Lyrics) 校对:何镇汐.许登洋(Seay) 为了运行 ASP.NET Core 应用程序,你需要使用 WebHostBuilder 配置和启动一个宿主. 什么是宿主? ASP.NET Core 应用程序需要在宿主中执行.宿主必须实现 IWebHost 接口,这个接口暴露了功能和服务的集合,以及 Start 方法.宿主通常使用 WebHostBuilder 的实例进行创建,该实例构建并返回一个 WebHost 实例.WebHos…
原文:Managing Application State 作者:Steve Smith 翻译:姚阿勇(Dr.Yao) 校对:高嵩 在 ASP.NET Core 中,有多种途径可以对应用程序的状态进行管理,取决于检索状态的时机和方式.本文简要介绍几种可选的方式,并着重介绍为 ASP.NET Core 应用程序安装并配置会话状态支持. 查看或下载示例代码 应用程序状态的可选方式 应用程序状态 指的是用于描述应用程序当前状况的任意数据.包括全局的和用户特有的数据.之前版本的ASP.NET(甚至ASP…
一.简介 在MVC以外的场景中,我们往往需要完成一些模板引擎生成代码或页面的工作:在以前我们一般常用的有Razor.NVeocity.VTemplate.虽然所有的模板系统都具有一些共同特征,但 Razor却和我们前面讨论的二种视图引擎截然不同.不同于其它视图引擎,Razor在使用XML代 码方面没有走得那么极端.它也不完全类似于ASPX,因为它把那些比较笨重的占位符替换成@符号接表达式或者普通的控制块.因为不需要特殊的结束标记,所 以Razor最终的代码很简练. 本篇介绍的主角是Razor,在…