猿问

UnityContainer 使用问题

我看到写代码中有一个静态类去实现注册,但是其中有2句不是很理解(红色部分)

public static class Bootstrapper
{
public static void Initialise()
{
var container = BuildUnityContainer();

DependencyResolver.SetResolver(new UnityDependencyResolver(container));

Microsoft.Practices.ServiceLocation.ServiceLocator.SetLocatorProvider(() => new UnityServiceLocator(container));
}

private static IUnityContainer BuildUnityContainer()
{
var container = new UnityContainer().LoadConfiguration();

container.RegisterControllers();
return container;
}
}

1.DependencyResolver.SetResolver(new UnityDependencyResolver(container));这句

提供了一种依赖解析器注册点,使用指定的依赖解析器,是否是必须的,因为我看见很多人的例子里面并没有使用这个。

2.Microsoft.Practices.ServiceLocation.ServiceLocator.SetLocatorProvider(() => new UnityServiceLocator(container));

这2句话分别有什么作用,为什么要使用?


12345678_0001
浏览 538回答 2
2回答

拉莫斯之舞

對與 你的這個方式,這個是必須的。還可以採用另外一個方式。都是提供ioc 注入。

墨色风雨

你可以看下它所属的程序集DependencyResolver,比如我现在用的mvc就是用它的。
随时随地看视频慕课网APP
我要回答