2

我在 Unity 中使用 MVC4 和 DependencyResolver。就像在 Brad Wilson 的博客页面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>

我有错误,上下文为空。

4

1 回答 1

0

@inherits SharedView 在 _Layout.cshtml 中不起作用,我认为是因为它不像母版页那样查看和使用。在视图和部分视图中,所有的作品都很完美。

于 2012-09-17T07:54:20.033 回答