博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
DotNetCore跨平台~autofac属性的自动注入
阅读量:6691 次
发布时间:2019-06-25

本文共 1185 字,大约阅读时间需要 3 分钟。

在使用autofac这个DI工具时,我们一般使用的是构造方法注入,而dotnetcore的标准框架里也集成了构造方法注入,而属性注入在一些场景下,表现的更为灵活,像java的spring框架里就有@Autowired注解来实现属性的注入,而autofac这个框架也提示了属性自动注入的方式(PropertiesAutowired)。

下面准备dao和bll层代码,bll对dao层有引用

 

public class UserRepository        {            public int GetUserId()            {                return 1;            }        }        public class UserService        {            public UserRepository _userRepository { get; set; }            public int GetUserId()            {                if (_userRepository != null)                {                    return _userRepository.GetUserId();                }                return 0;            }        }

 

在单元测试里进行属性注入的验证

[Fact]        public void Test1()        {            ContainerBuilder builder = new ContainerBuilder();            builder.RegisterType
().PropertiesAutowired();//它里面的属性自动注册 builder.RegisterType
(); var container = builder.Build(); UserService userService = container.Resolve
(); Assert.Equal(1, userService.GetUserId()); }

经过测试我们发现,dao层的GetUserId方法被正确返回了。

 

转载于:https://www.cnblogs.com/lori/p/8744215.html

你可能感兴趣的文章
腾讯2014年实习生招聘笔试面试经历
查看>>
把Jar文件转成exe安装文件
查看>>
不浮躁,获取充实感
查看>>
Pyqt 国际化多语言支持
查看>>
大多数女生为什么不适合当程序员?
查看>>
SID1190471 / 烦人的幻灯片 暴力出奇迹 !!!!!!!!!!!!!!!!!!...
查看>>
android开发-c++代码调用so库
查看>>
对Verilog 初学者比较有用的整理(转自它处)
查看>>
高速排序 与 随机高速排序 算法分析
查看>>
使用MyEclipse 2014构建Maven项目的两种方法
查看>>
WebGIS中以version方式实现代码更新后前端自动读取更新代码的方法
查看>>
删除LINUX更新后多余的内核
查看>>
Centos 安装Apache软件
查看>>
微信小程序中在swiper-item中遍历循环添加多个数据内容(微信小程序交流群:604788754)...
查看>>
Nginx配置
查看>>
家居环境监測系统设计(PC上位机版)(手机APP版待定)
查看>>
java-mybaits-00503-延迟加载
查看>>
看淡你的权力
查看>>
Linux学习(一)
查看>>
[1-5] 把时间当做朋友(李笑来)Chapter 5 【小心所谓成功学】 摘录
查看>>