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("类型未注册");
上一篇:JetBrains 注册码


下一篇:STL_算法_03_拷贝和替换算法