AutoFac文档5(转载)

AutoFac文档5(转载)

目录

  1. 开始
  2. Registering components
  3. 控制范围和生命周期
  4. 用模块结构化Autofac
  5. xml配置
  6. 与.net集成
  7. 深入理解Autofac
  8. 指导
  9. 关于
  10. 词汇表

扫描

autofac可以使用约定在程序集中注册或者寻找组件。

发现组件

autofac2可以根据用户指定的规则在程序集中注册一系列的类型,这种方法叫做convention-driven registration或者扫描。

 
1
2
3
4
5
var dataAccess = Assembly.GetExecutingAssembly();
 
builder.RegisterAssemblyTypes(dataAccess)
    
.Where(t => t.Name.EndsWith(
"Repository"
))
    
.AsImplementedInterfaces();

每个RegisterAssemblyTypes方法只能应用一套规则。如果有多套不同的集合要注册,那就有必要多次调用RegisterAssemblyTypes。

选择类型

RegisterAssemblyTypes接受程序集的集合。默认情况下,程序集中所有公共具体的类都会被注册。

如果想要过滤注册的类型,可以使用Where.向下面这样:

 
1
Where(t => t.Name.EndsWith(
"Repository"
))

如果想要排除某些类型,使用Except():

 
1
Except<MyUnwantedType>()

或者,自定义那些已经排除的类型的注册:

 
1
Except<MyCustomisedType>(ct =>ct.As<ISpecial>().SingleInstance())

多个过滤器可以同时使用,这时他们之间是AND的关系

指定服务

RegisterAssemblyTypes这个注册方法是注册单个方法的超集,所以类似As的方法也可以用在程序集中,例如

 
1
As<IRepository>()

As和Named这两个方法额外的重载方法接受lambda表达式来决定服务会提供什么样的类型。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/110035.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • cmd常用命令大全

    cmd常用命令大全

    2021年9月29日
    38
  • 抓包工具Charles使用教程

    抓包工具Charles使用教程文章目录一、什么是Charles?二、下载安装:三、http抓包:一、什么是Charles?Charles,因产品Icon为青花瓷造型,俗称青花瓷。主要是用来抓取网络流量包,可以分析产生的网络请求、可以配置代理来抓取手机流量包数据。二、下载安装:1、官方渠道,收费版;2、安装破解版,百度网盘地址:https://pan.baidu.com/s/1_ApnyPqoN5EQ6JvHMjnCTQ三、http抓包:1、开始代理配置:目录:Proxy-ProxySettings2、查看电

    2022年5月7日
    53
  • ES6之async与await

    ES6之async与await

    2020年11月19日
    218
  • WinRAR去广告心得

    WinRAR去广告心得学习winAPI函数CreateWindow函数 软件创建窗口分为1首先注册2开始创建3显示分别有各自函数形成 还要有消息传递机制每个窗口有自己的类注意类函数参数问题   Winrar5.4去广告首先下断创建窗口函数进而多次运行暂停知道找到广告出现的窗口class追踪函数入口ret掉注意堆栈平衡

    2022年5月23日
    31
  • 自动生成测试用例_测试用例设计的完整过程

    自动生成测试用例_测试用例设计的完整过程前言写用例之前,我们应该熟悉API的详细信息。建议使用抓包工具Charles或AnyProxy进行抓包。har2case我们先来了解一下另一个项目har2case他的工作原理就是将当前主流的抓

    2022年7月28日
    10
  • 谷歌高级搜索技巧_谷歌搜索app技巧

    谷歌高级搜索技巧_谷歌搜索app技巧现在编程几乎就等同于谷歌了(虽然并不是什么好习惯,但很多人就是这么做的)。比如现在你想写个程序来实现某种功能,有99%的可能已经有人完成了并且把代码上传到了StackOverflow或者Github上。办公桌上已经不需要放一堆堆的参考书了,我们只需要把想知道的键入搜索框,然后期待着答案出现在前九个结果中就好了。不过很多人可能不知道,Google隐藏着许多功能强大的搜索技巧。就像掌握快捷

    2022年10月21日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号