随笔分类 - ASP.NET CORE
摘要:前言 IOptionsMonitor 是一种单一示例服务,可随时检索当前选项值,这在单一实例依赖项中尤其有用。IOptionsMonitor用于检索选项并管理TOption实例的选项通知, IOptionsMonitor 支持以下方案: 更改通知 命名选项 可重载配置 选择性选项失效 (IOptio
阅读全文
摘要:前言 上一篇文章介绍IOptions的注册,本章我们继续往下看 IOptions IOptions是一个接口里面只有一个Values属性,该接口通过OptionsManager实现 OptionsManager OptionsManager实现了IOptions和IOptionsSnapshot,他
阅读全文
摘要:前言 ASP.NET Core 后我们的配置变得更加轻量级了,在ASP.NET Core中,配置模型得到了显著的扩展和增强,应用程序配置可以存储在多环境变量配置中,appsettings.json用户机密等 并可以通过应用程序中的相同界面轻松访问,除此之外,ASP.NET中的新配置系统允许使用Opt
阅读全文
摘要:引言 前几天 ".NET Core3.1发布" ,于是我把公司一个基础通用系统升级了,同时删除了几个基础模块当然这几个基础模块与.NET Core3.1无关,其中包括了支付模块,升级完后静文(同事)问我你把支付删除了啊?我说是啊,没考虑好怎么加上(感觉目前不太好,我需要重新设计一下)。 故事从这开始
阅读全文
摘要:.NET Core3.1发布 我们很高兴宣布.NET Core 3.1的发布。实际上,这只是对我们两个多月前发布的.NET Core 3.0的一小部分修复和完善。最重要的是.NET Core 3.1是长期支持(LTS)版本,并且将支持三年。和过去一样,我们希望花一些时间来发布下一个LTS版本。额外的
阅读全文
摘要:前言 上一篇文章主要介绍了ObjectPool的理论知识,再来介绍一下Microsoft.Extensions.ObjectPool是如何实现的. 核心组件 ObjectPool ObjectPool 是一个泛型抽象接口,他抽象了两个方法Get和Return Get方法用于从对象池获取到可用对象,如
阅读全文
摘要:前言 对象池是一种设计模式,一个对象池包含一组已经初始化过且可以使用的对象,而可以在有需求时创建和销毁对象。池的对象可以从池中取得对象,对其进行操作处理,并在不需要时归还给池子而非直接销毁他,他是一种特殊的工厂对象。 若初始化、实例化的代价高,且有需求需要经常实例化,但每次实例化的数量较小的情况下,
阅读全文
摘要:前言 在ASP.Net Core2.X调用的CreateWebHostBuilder和3.X的主要区别在于WebHost的调用,CreateDefaultBuilder被Host替换,另一个区别是对ConfigureWebHostDefaults()的调用; 由于新的主机生成器是通用主机生成器,因此
阅读全文
摘要:前言 Microsoft.AspNetCore.ConcurrencyLimiter AspNetCore3.0后增加的,用于传入的请求进行排队处理,避免线程池的不足. 我们日常开发中可能常做的给某web服务器配置连接数以及,请求队列大小,那么今天我们看看如何在通过中间件形式实现一个并发量以及队列长
阅读全文
摘要:前言 压缩可以大大的降低我们Web服务器的响应速度,压缩从而提高我们网页的加载速度,以及节省一定的带宽. 何时使用相应压缩中间件 在IIS,Apache,Nginx中使用基于服务端的响应压缩技术。中间件的执行可能和服务端模块不匹配。HTTP.sys 和Kestrel server目前没有提供内置的压
阅读全文
摘要:ASP.NET Core 提供运行状况检查中间件和库,以用于报告应用基础结构组件的运行状况。 运行状况检查由应用程序作为 HTTP 终结点公开。 可以为各种实时监视方案配置运行状况检查终结点: 运行状况探测可以由容器业务流程协调程和负载均衡器用于检查应用的状态。 例如,容器业务流程协调程序可以通过停
阅读全文
摘要:linux系统部署.netcore程序后,访问某台sqlserver 2008 R2数据库 `` Connection Timeout Expired. The timeout period elapsed during the post login phase. The connection co
阅读全文
摘要:前言 上一章介绍了Docker通过多条命令创建启动运行Docker容器,由此可见这样一个个去创建单独的容器也是相当麻烦的,比如要在某个复杂项目中用DB、缓存、消息等等,这样我们还要去一个个再创建,为此这时候需要用上我们三剑客中的一员大将自动挡的( DockerCompose ). Compose 是
阅读全文
摘要:引言 Docker发布于2013年,Docker是dotCloud公司创始人在法国期间发起的一个公司内部项目,他是dotCloud多年云技术的一个革新.Docker在容器基础上进行了一步的封装,从网络进程到网络互连到进程隔离极大的减少了容器的创建和维护,Docker比虚拟机技术更加便捷. Docke
阅读全文
摘要:前言 OAuth 2.0默认四种授权模式(GrantType) 授权码模式(authorization_code) "简化模式( implicit )" "密码模式(resource owner password) credentials)" "客户端模式(client_credentials)"
阅读全文
摘要:前言 OAuth 2.0默认四种授权模式(GrantType) 授权码模式(authorization_code) "简化模式(implicit)" "密码模式( resource owner password credentials )" "客户端模式(client_credentials)" 本
阅读全文
摘要:前言 OAuth 2.0默认四种授权模式(GrantType) 授权码模式(authorization_code) "简化模式(implicit)" "密码模式(resource owner password credentials)" "客户端模式( client_credentials )" 本
阅读全文
摘要:概览 现代应用程序看上去大都是这样的: 最常见的交互是: 浏览器与Web应用程序通信 Web应用程序与Web API通信(有时是独立的,有时是代表用户的) 基于浏览器的应用程序与Web API通信 本机应用程序与Web API通信 基于服务器的应用程序与Web API通信 Web API与Web A
阅读全文
摘要:Asp.NetCore实现Aop,AspectCore实现Aop
阅读全文
摘要:我们为什么要在对象之间做映射 处于耦合性或者安全性考虑或者性能考虑我们不希望将Model模型传递给他们,我们会在项目中创建一些DTO(Data transfer object数据传输对象),进行数据的传输. 概述 AgileMapper是一个零配置、高度可配置的对象-对象映射器,具有可查看的执行计划
阅读全文