1
我遇到了自定义ViewEngine的问题。我尝试覆盖FindView方法来设置主视图,而不必在每个视图页面中定义它。asp.net mvc 2:在WebFormViewEngine的FindView中设置母版页
public override ViewEngineResult FindView(ControllerContext controllerContext, string viewName, string masterName, bool useCache)
{
if (string.IsNullOrEmpty(masterName))
{
masterName = this.MasterView;
}
return base.FindView(controllerContext, viewName, masterName, useCache);
}
从调试器查看一切都看起来不错:我没有设置视图页上的财产的MasterPageFile,masterName进来一个空字符串,masterName被设置为this.MasterView(其被通过初始化设置查看引擎)。
问题是:浏览器显示“仅在引用母版页的内容页面中允许内容控件”。没有调试器出现。
有谁知道为什么或者这是甚至是预期的行为?
在此先感谢!
是的,我就是这么做的。 – bzlm 2010-09-30 11:25:19
是的......也许有一种方法可以改变viewengines或类似的东西的优先级,所以没有必要清楚......谁知道;-) – 2010-10-06 07:25:48