Autofac之实例获取

经过以前的学习了解了使用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("类型未注册");
相关文章
相关标签/搜索