经过以前的学习了解了使用Autofac第一步是经过向容器中注册类型,而后从容器中获取类型实例该怎么作呢?sql
本次主要学习如何在Autofac中获取注册类型实例学习
Resolvespa
使用Resolve方法获取容器中注册的类型实例,若是类型未注册会抛异常 code
var sqlDal = container.Resolve<SqlDal>(); sqlDal.Add();
ResolveOptionalblog
使用ResolveOptional方法获取容器中注册的类型实例,若是类型未注册会返回nullit
var sqlDal2 = container.ResolveOptional<SqlDal>(); sqlDal2.Add();
TryResolveio
使用TryResolve方法获取容器中注册的类型实例,使用out参数,而且返回一个bool类型表示是否成功获取到类型实例class
SqlDal sqlDal3 = null; if (container.TryResolve<SqlDal>(out sqlDal3)) sqlDal3.Add(); else Console.WriteLine("类型未注册");