摘要:
Net6 DI生命周期 阅读全文
摘要:
NetCore文件上传两种方式 NetCore官方给出的两种文件上传方式分别为“缓冲”、“流式”。我简单的说说两种的区别, 1.缓冲:通过模型绑定先把整个文件保存到内存,然后我们通过IFormFile得到stream,优点是效率高,缺点对内存要求大。文件不宜过大。 2.流式处理:直接读取请求体装载后 阅读全文
摘要:
配置源的同步 IOptionsMonitor 使用 //以下demo演示使用IOptionsMonitor重新加载配置并当重新加载配置是执行回调函数 var configuration = new ConfigurationBuilder().AddJsonFile(path: "profile.j 阅读全文
摘要:
Net6 Configuration & Options 源码分析 Part2 Options 第二部分主要记录Options 模型 OptionsConfigurationServiceCollectionExtensions类提供了对Options 模型与配置系统的Configure方法的扩展 阅读全文
摘要:
Net6 Configuration & Options 源码分析 Part1 在Net6中配置系统一共由两个部分组成Options 模型与配置系统.它们是两个完全独立的系统。 第一部分主要记录配置系统 下面演示的几个实例具有一个共同的特征( 1. 将配置绑定为Options对象),即都采用配置系统 阅读全文
摘要:
[CLR]委托 Delegate 回调函数 非托管程序回调函数 在非托管c/c++中非成员函数值是一个内存地址,这个地址不携带任何信息比如函数的参数 返回值。参数类型。 托管程序回调函数-委托 委托就是c#内的回调函数,它是类型安全的 能定义类的地方都能定义委托。 包装器 委托对象是回调方法的一个包 阅读全文
摘要:
Net6 CallSiteFactory ServiceCallSite, CallSiteChain abstract class ServiceCallSite ServiceCallSite是个抽象类,实现ConstantCallSite、ConstructorCallSite、 Factor 阅读全文
摘要:
CallSiteRuntimeResolver CallSiteRuntimeResolver是实现了CallSiteVisitor之一。 提供的方法主要分三个部分 自有成员方法 Resolve提供服务 VisitCache 私有构造函数 重写父类方法 VisitDisposeCache(Servi 阅读全文
摘要:
ServiceCollection、ServiceDescriptor、ServiceLifetime、IServiceProvider Microsoft.Extensions.DependencyInjection.Abstractions Microsoft.Extensions.Depend 阅读全文
摘要:
ServiceProvider ServiceProvider是对IServiceProvider实现,它有一个internal的访问修饰符描述的构造,并需要两个参数IServiceCollection & ServiceProviderOptions。所以可以通过 ServiceCollectio 阅读全文