static class ServiceExtension { internal static WebApplicationBuilder AddKApp(this WebApplicationBuilder
这样做有一个弊端就是Web的会注入一遍,Ef也会注入一遍,重复注入,在Program.cs里面我们先注入一个返回IServiceCollection的Func,这样在DBContext可以获取到这个 传到ServiceExtension InjectAttribute:Attribute { public InjectAttribute() { } } public class ServiceExtension : IDbContextOptionsExtension { public ServiceExtension(Func<IServiceCollection> func) { DecodeMicroMsgContext>((a, m) => { ((IDbContextOptionsBuilderInfrastructure)m).AddOrUpdateExtension(new ServiceExtension optionsBuilder.AddInterceptors(); ((IDbContextOptionsBuilderInfrastructure)optionsBuilder).AddOrUpdateExtension(new ServiceExtension
return; } // 可在此注入全局状态或初始化路由 }); } } (2)ExtensionAbility:扩展能力容器 支持 FormExtension(卡片)、ServiceExtension
provisioningProfiles: { "com.ntes.yanxuan" => "YanXuan_enterprise", "com.ntes.yanxuan.ServiceExtension
Extension管控能力增强:新增了ServiceExtension的后台管控以及统一超时机制。 ArkTS卡片能力增强:新增了透明卡片、数据代理刷新、单色模式和锁屏卡片能力。