0

我有一个名为“RenderBody()”的主模板和一个“OneIn”模板,它是主页面下的子模板。我还在 OneIn 模板中调用了 RenderBody() 函数,但它给了我这个错误:

The file "~/Views/OneIn.cshtml" cannot be requested directly because it calls the "RenderSection" method.

“RenderSection”实际上是“renderbody”,我只是在尝试一些新的东西,但它也不起作用

嵌套路径:

Master

  -> Homepage

  -> OneIn 

    -> One Column Page

我在所有页面顶部的代码上也有这些行:

@inherits Umbraco.Web.Mvc.UmbracoTemplatePage
@{
Layout = "ParentPageName.cshtml";
}
4

2 回答 2

0

是的,我也发现这在来自 Master Templates 时有点刺耳。您可以有多个级别的模板继承,但您的内容页面只能使用最低级别的模板。在您的示例中,这将是一列页面。

于 2013-01-16T04:17:01.910 回答
0

似乎您有一个尝试直接返回“onein”布局的操作方法,如果您正在调用RenderSectionRenderBody在其中调用,则不会发生这种情况。感谢任何在其中包含 RenderSection/Body 的视图作为一个abstract不能被新编但必须被继承的类!

于 2013-01-15T23:19:26.820 回答