当前位置: 首页 > news >正文

一级做爰A视频免费网站百度门店推广

一级做爰A视频免费网站,百度门店推广,wordpress创建表单,石家庄做外贸的网站建设一、背景 刚接触.net 6,记录一下在.net6上是怎么使用Autofac进行动态的依赖注入的 二、注入方式 1、新建一个webapi项目,框架选择net 6 2、引用Nuget包---Autofac.Extensions.Dependency   3、在Program.cs上添加如下代码 //依赖注入 builder.Host.Us…

一、背景

  刚接触.net 6,记录一下在.net6上是怎么使用Autofac进行动态的依赖注入的

二、注入方式

  1、新建一个webapi项目,框架选择net 6

  2、引用Nuget包---Autofac.Extensions.Dependency  

  3、在Program.cs上添加如下代码

//依赖注入
builder.Host.UseServiceProviderFactory(new AutofacServiceProviderFactory())//注册服务工厂
.ConfigureContainer<ContainerBuilder>(container =>
{  //添加依赖注入,AddModule是一个自定义的拓展方法,将依赖注入的方法单独提取出来,方便管理builder.Services.AddModule(container);
});
public static IServiceCollection AddModule(this IServiceCollection services, ContainerBuilder builder, IConfiguration configuration){//初始化配置文件Type baseType = typeof(IDependency);//自定义的空类//动态运行项目的类库var compilationLibrary = DependencyContext.Default.RuntimeLibraries.Where(x => !x.Serviceable&& x.Type == "project").ToList();var count1 = compilationLibrary.Count;List<Assembly> assemblyList = new List<Assembly>();foreach (var _compilation in compilationLibrary){try{assemblyList.Add(AssemblyLoadContext.Default.LoadFromAssemblyName(new AssemblyName(_compilation.Name)));}catch (Exception ex){Console.WriteLine(_compilation.Name + ex.Message);}}//注册程序集的方式添加依赖builder.RegisterAssemblyTypes(assemblyList.ToArray()).Where(type => baseType.IsAssignableFrom(type) && !type.IsAbstract)//过滤非抽象类,继承了IDependency接口的类.AsSelf().AsImplementedInterfaces().InstancePerLifetimeScope();//实例的生命周期//单独注册依赖服务//注册数据库基础操作和工作单元builder.RegisterGeneric(typeof(BaseRepository<,>)).As(typeof(IRepository<,>));builder.RegisterGeneric(typeof(UnitWork<>)).As(typeof(IUnitWork<>));//注册app层builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly());builder.RegisterType(typeof(RedisCacheContext)).As(typeof(ICacheContext));builder.RegisterType<MemoryCacheService>().As<ICacheService>().SingleInstance();return services;}

4.

//依赖注入
builder.Host.UseServiceProviderFactory(new AutofacServiceProviderFactory())

以及再startup.cs中添加ConfigureContainer方法

   public void ConfigureContainer(ContainerBuilder builder)
   {
       ExtAutofac.InitAutofac(builder);
   }

在app层

namespace App
{public static  class ExtAutofac{private static IContainer _container;public static void InitAutofac(ContainerBuilder builder){//注册数据库基础操作和工作单元builder.RegisterGeneric(typeof(BaseRepository<,>)).As(typeof(IRepository<,>));builder.RegisterGeneric(typeof(UnitWork<>)).As(typeof(IUnitWork<>));//注册app层builder.RegisterAssemblyTypes(Assembly.GetExecutingAssembly());builder.RegisterType(typeof(RedisCacheContext)).As(typeof(ICacheContext));builder.RegisterType(typeof(HttpContextAccessor)).As(typeof(IHttpContextAccessor));InitDependency(builder);}/// <summary>/// 注入所有继承了IDependency接口/// </summary>/// <param name="builder"></param>private static void InitDependency(ContainerBuilder builder){Type baseType = typeof(IDependency);var compilationLibrary = DependencyContext.Default.CompileLibraries.Where(x => !x.Serviceable&& x.Type == "project").ToList();var count1 = compilationLibrary.Count;List<Assembly> assemblyList = new List<Assembly>();foreach (var _compilation in compilationLibrary){try{assemblyList.Add(AssemblyLoadContext.Default.LoadFromAssemblyName(new AssemblyName(_compilation.Name)));}catch (Exception ex){Console.WriteLine(_compilation.Name + ex.Message);}}builder.RegisterAssemblyTypes(assemblyList.ToArray()).Where(type => baseType.IsAssignableFrom(type) && !type.IsAbstract).AsSelf().AsImplementedInterfaces().InstancePerLifetimeScope();}}
}

http://www.ritt.cn/news/13419.html

相关文章:

  • 手工制作代加工接单网百度怎么做关键词优化
  • 做蛋糕网站有哪些网络广告人社区
  • 宽屏网站宽度发外链的平台有哪些
  • 中国采招网官方网站如何搭建企业网站
  • 做网站定金一般多少专业的制作网站开发公司
  • 做交易网站需要用到的软件有哪些信息流优化师是干什么的
  • 公司名字大全20000个三个字淘宝优化关键词的步骤
  • 做自媒体素材搬运网站新闻头条今日新闻
  • 工业网站开发商个人网站该怎么打广告
  • 关于政府门户网站建设方案中国电信视频app下载
  • 张家港网站建设门店培训加盟
  • 怎么在wordpress上设计网站软文广告经典案例
  • 深圳招聘信息最新招聘2022seo网络推广课程
  • 网页版微信二维码一直失效seo广告优化多少钱
  • 我想做服装网站怎么做百度指数十年
  • f3322免费域名申请北京seo优化服务
  • 个人做论坛网站要什么证件竞价推广平台有哪些
  • 网站自己建设湖北seo
  • 看装修效果图哪个网站好整站排名优化公司
  • java做房屋拍卖网站海洋网络推广效果
  • 网站建设哪个公司好seo查询seo优化
  • 昆明网站建设手机版搜索热度查询
  • 怎么做flash网站晨阳seo服务
  • 北京市房山区住房和城乡建设委员会网站seo和sem的联系
  • 做logo设计网站seo和sem哪个工资高
  • 微企申请网站中国百强县市榜单
  • 用糖做的网站搜索关键词排名优化软件
  • 权威的网站制作营销策划公司 品牌策划公司
  • 洪雅网站建设网站推广的具体方案
  • 河南最新疫情公布成都seo经理