Я использую MVC4 и DependencyResolver с Unity. Как на странице блога Брэда Уилсона http://bradwilson.typepad.com/blog/2010/07/service-location-pt3-views.html, я хочу использовать внедрение зависимостей для своих представлений. Но кажется, что механизм просмотра MVC4 не пытается создавать классы страниц просмотра через DependencyResolver. Так ли это, или может я что-то не так делаю? Вот мой код:
public static void Register() {
var unity = new UnityContainer();
unity.RegisterType<SpaceProject.Models.SpaceShipEntities>(new RequestLifetimeManager());
DependencyResolver.SetResolver(new UnityDependencyResolver(unity));
}
public abstract class SharedView : WebViewPage
{
[Dependency]
public SpaceProject.Models.SpaceShipEntities Context { set; get; }
}
и мой _Layout.cshtml:
@inherits SharedView
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head></head>
<body>
@foreach (var menu in Context.Menu) {
<li>
<a href="#">@menu.Title</a> |
</li>
}
</body>
</html>
У меня есть ошибка, что Context имеет значение null.