Autofac之实例获取
通过之前的学习了解了使用Autofac第一步是通过向容器中注册类型,然后从容器中获取类型实例该怎么做呢?
本次主要学习如何在Autofac中获取注册类型实例
Resolve
使用Resolve方法获取容器中注册的类型实例,如果类型未注册会抛异常
var sqlDal = container.Resolve<SqlDal>();
sqlDal.Add();
ResolveOptional
使用ResolveOptional方法获取容器中注册的类型实例,如果类型未注册会返回null
var sqlDal2 = container.ResolveOptional<SqlDal>();
sqlDal2.Add();
TryResolve
使用TryResolve方法获取容器中注册的类型实例,使用out参数,并且返回一个bool类型表示是否成功获取到类型实例
SqlDal sqlDal3 = null;
if (container.TryResolve<SqlDal>(out sqlDal3))
sqlDal3.Add();
else
Console.WriteLine("类型未注册");
Autofac之实例获取的更多相关文章
- Autofac创建实例的方法总结 【转】
Autofac创建实例的方法总结 1.InstancePerDependency 对每一个依赖或每一次调用创建一个新的唯一的实例.这也是默认的创建实例的方式. 官方文档解释:Configure t ...
- Java-Runoob-高级教程-实例-时间处理:03. Java 实例 - 获取年份、月份等
ylbtech-Java-Runoob-高级教程-实例-时间处理:03. Java 实例 - 获取年份.月份等 1.返回顶部 1. Java 实例 - 获取年份.月份等 Java 实例 以下实例演示 ...
- Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间
ylbtech-Java-Runoob-高级教程-实例-时间处理:02. Java 实例 - 获取当前时间 1.返回顶部 1. Java 实例 - 获取当前时间 Java 实例 以下实例演示了如何使 ...
- Java-Runoob-高级教程-实例-数组:03. Java 实例 – 获取数组长度-*
ylbtech-Java-Runoob-高级教程-实例-数组:03. Java 实例 – 获取数组长度 1.返回顶部 Java 实例 - 获取数组长度 Java 实例 本文我们将为大家介绍如何使用数 ...
- cocos2d-x 2.0通过CCAnimation实例获取CCSpriteFrame
通过CCAnimation实例获取CCSpriteFrame,会出现类型转换问题.我们在创建一个animation的时候,经常遵循下面的步骤:1)create 一个CCArray对象A.2)通过A-& ...
- 每天一个JavaScript实例-获取元素当前高度
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- IoC容器Autofac之实例优化(三)
回顾之前的代码 //这个类的作用是筛选出MPG类型的电影 public class MPGMovieLister { public Movie[] GetMPG() { var finder = Mo ...
- 微信小程序实例-获取当前的地理位置、速度
微信小程序官方文档 https://mp.weixin.qq.com/debug/wxadoc/dev/api/location.html JS代码 //index.js //获取应用实例 var a ...
- Android实例-获取程序版本号(XE10+小米2)
相关资料: 383675978群号 实例源码: unit Unit1; interface uses System.SysUtils, System.Types, System.UITypes, Sy ...
随机推荐
- PHP 【四】
数组 $string = array(x,y,z); <?php$cars=array("Volvo","BMW","Toyota") ...
- Linux下间隔多少秒 (即以秒为单位) 去执行某条命令或某个shell脚本的操作方法【转】
在日常运维工作中, 经常会碰到以秒为单位去定时执行某些命令或监控脚本的需求. 说到定时任务就要用到crontab,通常来说,crontab的最小单位是分钟级别,要想实现秒级别的定时任务,就要进行特殊设 ...
- Hack Programming
计算机由ROM(instruction memory).RAM(data memory).CPU组成,其关系如下图 在计算中存在3种寄存器:D.A.M.其中D是data register,A是addr ...
- 使用pytesseract出现的问题
dyld: Library not loaded: /usr/local/opt/jpeg/lib/libjpeg.8.dylib Referenced from: /usr/local/lib/li ...
- [C]关于函数指针参数的赋值
问题 在有一次尝试用stat()函数获取文件属性的时候,发现如果直接声明一个指针,然后把这个指针作为参数传给函数,会导致函数执行失败,原代码: #include <sys/stat.h> ...
- eclipse创建maven——初学
1.进入eclipse→File→new→other→搜索maven,如下图: 2.选择一个工作空间,点击Next 3.进入如下页面 4.填写Grop id和Artifact id,Version默认 ...
- Team Queue (HDU:1387)
Queues and Priority Queues are data structures which are known to most computer scientists. The Team ...
- 动态加载机Servlet容器加载器
动态加载是Servlet 3.0中的新特性,它可以实现在 不重启Web应用的情况下加载新的Web对象(Servlet. Filter.Listener).Servlet容器加载器也是Servlet 3 ...
- laravel 汇总数据
public function userInfluenceCollect(Request $request) { $types = ['logins', "checkins", & ...
- __libc_csu_init函数的通用gadget
. ; =============== S U B R O U T I N E ======================================= . . . public __libc_ ...