對於依賴注入一直處於一知半解的情況,只能說是知道有這個詞但如何用,什麼時候使用一概不知,今天略有收穫記錄一下
首先是依賴,簡單點就是依靠,在開發中最長使用的就是實例化,可以說所有的操作就是對實例化對象的依賴,而這裏的依賴是對Unity的依賴,
其次是注入,注入就是往瓶子中倒水,當然這裏倒入的是Unity的容器
在unity 中首先做的就是注入對象,在unity 中使用接口和實現類作爲注入對象
public class DependencyRegisterType
{
//系統注入
public static void Container_Sys(ref UnityContainer container)
{
container.RegisterType<ISysSampleBLL, SysSampleBLL>();//樣例
container.RegisterType<ISysSampleRepository, SysSampleRepository>();
}
}
既然實現類可以有多個,這就實現了鬆散耦合,關鍵還是看後面的實現類的引用。
既然有了注入,就需要有生成Unity容器的地方,這裏在全局函數Global.asax 中實現生成注入
//注入 Ioc
var container = new UnityContainer();
DependencyRegisterType.Container_Sys(ref container);
DependencyResolver.SetResolver(new UnityDependencyResolver(container));
代碼下載地址:https://download.csdn.net/download/xunbaogang/10631616