0

我有一个使用 .aspx 视图的 MVC 网站。我正在使用这种方法找到视图:

public override ViewEngineResult FindView(ControllerContext controllerContext, string viewName, string masterName, bool useCache)
    {
        string skinName =
            this.GetSkinName(controllerContext);

        string controllerName =
            controllerContext.RouteData.GetRequiredString("controller");

        string viewPath = 
            this.GetPathFromGeneralName(this.ViewLocationFormats, viewName, controllerName, skinName);

        string masterPath = 
            this.GetPathFromGeneralName(this.MasterLocationFormats, viewName, controllerName, skinName);

        if (string.IsNullOrEmpty(viewPath))
        {
            IEnumerable<string> searchedLocations =
                this.ViewLocationFormats.Union(this.MasterLocationFormats);
            return new ViewEngineResult(searchedLocations);
        }

        return new ViewEngineResult(this.CreateView(controllerContext, viewPath, masterPath), this);
    }

我有一个从母版页继承的视图。在它里面有一个到动作控制器的超链接,但它的视图没有连接到母版页(我不希望它是)。当它尝试显示第二个操作的视图(通过单击超链接)时,我收到上面的错误消息。我有其他指向其他内容页面的链接,这些链接工作正常,但我无法链接到独立的 .aspx 页面(不是从母版页继承的)。

有什么建议吗?

4

1 回答 1

0

我最终遵循了创建空白母版页的建议。这个链接有更多解释: http ://forums.asp.net/p/1880732/5294074.aspx/1?Re+Error+Content+controls+have+to+be+top+level+controls+in+a+内容+页+或+a+嵌套+母版+页+那个+参考+a+母版+页

于 2013-02-08T15:54:12.643 回答