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("類型未註冊");
相關文章
相關標籤/搜索