RenderSection和Web Helper有什么区别

时间:2012-12-04 19:40:04

标签: c# asp.net .net razor

RenderSectionRenderPage和网络助手之间有什么区别?

  • 列出项目I已使用RenderPage,它需要2个参数;磁盘上文件的名称,以及要传递给该页面的object数组。
  • 我使用了RenderSection,我相信只需要1个参数; section
  • 的名称
  • 我也使用过网络助手。这是我感到困惑的地方。使用帮助程序,您可以使用RenderBodyRenderSection完成所有操作。

在这里我感到困惑:

章节文件:

@section footer {
   <p>Copyright 2012 blah. Most rights reserved.</p>
}

帮助文件:

@helper header {
   <p>Copyright 2012 blah. Most rights reserved.</p>
}

CSHTML文件:

...
<body>
   @MyHelpers.header()
   @RenderBody()
   @RenderSection("footer", required: true)
</body>
...

1 个答案:

答案 0 :(得分:1)

RenderSection()RenderBody()允许您在布局页面和内容页面之间进行通信 您可以在布局页面中调用这些方法,并从内容页面返回内容。

相比之下,助手只能在他们定义的文件中调用。(或者,对于全球助手,可以从任何地方调用)