A B*_*gus 127 asp.net-mvc
对于ASP.NET MVC应用程序,我看到了这篇博客文章.作者ScottGu添加@section
了Index.cshtml.
我有几个问题(参考上面的文章):
@section
特定视图中的代码.为什么?有人可以解释为什么以及何时@section
在View中使用?
Fra*_*mas 128
@section
用于定义内容是从共享视图覆盖.基本上,它是一种调整共享视图的方法(类似于Web窗体中的母版页).
你可能会发现Scott Gu的写作非常有趣.
编辑:基于其他问题澄清
该@RenderSection
语法进入共享视图,如:
<div id="sidebar">
@RenderSection("Sidebar", required: false)
</div>
Run Code Online (Sandbox Code Playgroud)
然后,这将使用@Section
语法放在您的视图中:
@section Sidebar{
<!-- Content Here -->
}
Run Code Online (Sandbox Code Playgroud)
在MVC3 +中,您可以直接定义要用于视图的布局文件,也可以为所有视图设置默认视图.
可以在_ViewStart.cshtml中设置公共视图设置,它定义了与此类似的默认布局视图:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
}
Run Code Online (Sandbox Code Playgroud)
您还可以将共享视图设置为直接在文件中使用,例如index.cshtml,如此片段中所示.
@{
ViewBag.Title = "Corporate Homepage";
ViewBag.BodyID = "page-home";
Layout = "~/Views/Shared/_Layout2.cshtml";
}
Run Code Online (Sandbox Code Playgroud)
您可以通过多种方式调整此设置,并在此SO答案中提及更多内容.
Joh*_* Mc 21
一个很好的例子是Javascript.您希望它位于浏览器中呈现的页面底部,因为这是最佳实践.
您将如何从基于布局/母版页的视图执行此操作,您只能访问页面中间?
您可以通过在"布局"页面底部声明"脚本"部分来执行此操作.然后你可以添加内容,在这种情况下,Javascript包括(我希望!),从你的View页面到你的布局页面的底部.
归档时间: |
|
查看次数: |
101040 次 |
最近记录: |