什么是在asp.net MVC的@RenderSection

目的是什么,它是如何运作的。我明白捆绑是做什么的,但是我还没有弄清楚它做了什么,它可能很重要。

@RenderSection("scripts", required: false) 

也许是如何使用它的一个小例子?

2 Solutions collect form web for “什么是在asp.net MVC的@RenderSection”

如果你有这样的_Layout.cshtml视图

 <html> <body> @RenderBody() @RenderSection("scripts", required: false) </body> </html> 

那么你可以有一个像这样的index.cshtml内容视图

 @section scripts { <script type="text/javascript">alert('hello');</script> } 

必填项指示使用布局页面的视图是否必须具有脚本部分

如果

(1)你有这样的_Layout.cshtml视图

 <html> <body> @RenderBody() </body> <script type="text/javascript" src="~/lib/layout.js"></script> @RenderSection("scripts", required: false) </html> 

(2)你有Contacts.cshtml

 @section Scripts{ <script type="text/javascript" src="~/lib/contacts.js"></script> } <div class="row"> <div class="col-md-6 col-md-offset-3"> <h2> Contacts</h2> </div> </div> 

(3)你有About.cshtml

 <div class="row"> <div class="col-md-6 col-md-offset-3"> <h2> Contacts</h2> </div> </div> 

在布局页面上,如果需要设置为false“@RenderSection(”scripts“,required:false)”,当页面呈现和用户在页面上时,contacts.js不呈现。

  <html> <body><div>About<div> </body> <script type="text/javascript" src="~/lib/layout.js"></script> </html> 

如果需要设置为true“@RenderSection(”scripts“,required:true)”,当页面呈现和用户在ABOUT页面上时,contacts.js将被呈现。

 <html> <body><div>About<div> </body> <script type="text/javascript" src="~/lib/layout.js"></script> <script type="text/javascript" src="~/lib/contacts.js"></script> </html> 

简而言之,当设置为true时 ,无论您是否在其他页面上都需要它,它将以任何方式呈现。 如果设置为false ,则仅在呈现子页面时才会呈现。

  • 什么时候应该创build一个新的DbContext()
  • ASP MVC - 有什么常量的默认内容types?
  • RSS源在ASP.NET MVC
  • IIS劫持CORS预检选项请求
  • ASP.NET MVC - 如何使用视图模型
  • MVC4枚举和单选button列表
  • 从不同的文件夹渲染(不共享)
  • 在ASP.NET MVC中构build一个CMS
  • 在Windows Update之后,System.Web.Mvc无法正常工作
  • 如何validationASP.NET MVC中上传的文件?
  • TextBoxFor显示初始值,而不是从代码更新的值