首页 > 其他分享 >autofac的使用

autofac的使用

时间:2023-07-06 21:44:54浏览次数:31  
标签:autofac Assembly builder 接口 使用 container type

安装 autofac

安装 autofac.mvc

 

 

 

注册代码

 

var builder = new ContainerBuilder();
builder.RegisterControllers(typeof(MvcApplication).Assembly).PropertiesAutowired();
//注册所有实现了 IDependency 接口的类型
Type baseType = typeof(IDependency);
Assembly[] assemblies = Directory.GetFiles(AppDomain.CurrentDomain.RelativeSearchPath, "*.dll").Select(Assembly.LoadFrom).ToArray();
builder.RegisterAssemblyTypes(assemblies)
.Where(type => baseType.IsAssignableFrom(type) && !type.IsAbstract)
.AsSelf().AsImplementedInterfaces()
.PropertiesAutowired().InstancePerLifetimeScope();
//设置依赖解析器
var container = builder.Build();
DependencyResolver.SetResolver(new AutofacDependencyResolver(container));

 

接口服务层

 

 

服务实现层

 

依赖接口

 

 

标签:autofac,Assembly,builder,接口,使用,container,type
From: https://www.cnblogs.com/wugh8726254/p/17533413.html

相关文章

  • Xmake介绍和使用
    @目录介绍作用安装Windows系统Linux系统使用创建项目配置编译工具项目编译项目运行官网教程问题error:cannotexecv(nmake),Nosuchfileordirectoryerror:g++:fatalerror:noinputfiles介绍Xmake是一个基于Lua语言的跨平台构建工具,用于快速、简单地构建和管理C/C......
  • 7.6 爬虫基础知识学习 requests的使用
    1.requests的快速使用 /1爬虫定义:可见即可爬/2安装resquests模块正确路径下输入pipinstallrequests/3用requests发送get请求importrequests#res是响应对象就是http响应python包装成了对象(响应头,响应体等)res=requests.get('https://www.cnblogs.com/abc6838......
  • STM32下USB的使用
    一、介绍USB,即通用串行总线(UniversalSerialBus),包括USB协议和USB硬件两个方面,支持热插拔功能USB2.0使用四根线:VCC(5V)、GND、D+(3.3V)和D-(3.3V)(注:五线模式多了一个DI脚用于支持OTG模式,OTG为USB主机+USB设备双重角色)在USB主机上,D-和D+都接15K的电......
  • 使用docker-compose部署mysql单节点
    前提条件:确保服务器都安装了docker以及docker-compose服务......
  • IDEA:AXIOS使用网页报错net::ERR_CONNECTION_REFUSED
     之前使用的是下载的文件,一直是报错的状态,页面加载不进来 之后进官网选择在线的之后可用。......
  • 学会使用 Postman 环境变量,让接口测试更加高效
    在 Postman 中,用Environments来管理环境变量。我们在开发的过程中,往往会用到多个环境:开发环境,测试环境,UAT环境,生产环境等。我们要调用不同环境的API时,只需切换Postman的Environment即可。下面,我们来具体说下Postman环境变量的使用方法。知识扩展:Postman环境设置介绍......
  • SpringMVC学习巩固(基本使用)(1)
    框架概述:1.SpringMVC专注controller控制层的框架2.SpringMVC基于Servlet技术进行封装3.SpringMVC是SpringFrameWorld中的子框,可以完美融合到Spring容器中主要作用:a.简化请求参数接收b.简化前端数据响应组件作用:1.DispatcherServlet:接收前端参数请求和响应前端数据,并......
  • Kafka使用(自动化)
    self.request_topic='requestRemoteModelServer'self.response_topic='responseRemoteModelServer'self.producer=Biz_模型控制服务.kafka_producer_init()self.consumer=Biz_模型控制服务.kafka_consumer_init(self.response_topic,10000) Biz_模型控制服务.produce......
  • 阿里区块链开放联盟使用http方式对接
    using(HttpClienthttpClient=newHttpClient()){/*所有的步骤实例都得进行http请求,当前demo中我的请求放在最后,只是一步一步的流程进行开发*/SendEntityentity=newSendEntity();#region步骤一:调用合约接口,将数据上链操作成功实现合约调用的列子(目前注释......
  • Excle使用正则提取字符串
    1、Alt+F11打开VB编辑工具2、选择sheet创建新模块3、插入下列代码FunctionRegexExtract(ByValinputStringAsString)AsStringDimregExAsObjectSetregEx=CreateObject("VBScript.RegExp")WithregEx.Global=True.Pattern=......