在呈现的页面中呈现页面

时间:2012-04-13 10:21:13

标签: c# razor

我正在使用剃刀视图引擎和C#工作,并对RenderPage()函数有疑问。

我有一个带有RenderBody()的_PageStart。这很好,并加载请求的页面。但如果我要求,例如www.page.com/products和products.cshtml包含函数RenderPage(),此函数未执行。

RenderPage()仅适用于第一级执行页面(此处为_PageStart)吗?有没有办法在渲染页面中渲染页面?

谢谢

2 个答案:

答案 0 :(得分:2)

根据我对你的问题的理解(当你说RenderBody时,我假设你的意思是RenderPage),你有一个页面调用RenderPage()来包含另一个页面,并且包含的​​页面再次调用RenderPage()还包括另一页。

这应该有效。请记住,您的路径是相对于您调用RenderPage()的页面,而不是您在层次结构中的顶级页面。另请注意,对于使用RenderPage()呈现的页面,不会评估_ViewStart.cshtml,因此不会使用默认的父布局。

如果您仍遇到任何问题,请发布一些源代码,以便获得更好的答案。

答案 1 :(得分:1)

如果我正确理解你的问题,你必须有儿童控制才能做到这一点。