我正在将一个经典的 ASP.NET 应用程序(ASPX 页面)移植到 ASP.NET MVC 3。目前我使用 ContentPlaceHolder 将内容动态添加到特定的 ASP.NET ASPX 页面。考虑以下:
<!DOCTYPE html>
<html>
<head>
<link href="MyStyleSheet.css" rel="Stylesheet" type="text/css" />
<asp:ContentPlaceHolder ID="Styles">
</asp:ContentPlaceHolder>
<script type="text/javascript" src="jQueryAndOtherScripts.js"></script>
<asp:ContentPlaceHolder ID="Scripts">
</asp:ContentPlaceHolder>
</head>
<body>
<div id="Container">
<asp:ContentPlaceHolder ID="Content">
</asp:ContentPlaceHolder>
</div>
</body>
</html>
因此,在上面的片段中,我有 3 个内容占位符,因此我可以添加基于单个页面的附加样式、脚本和内容。我这样做的原因是每个页面只加载与页面内容相关的样式、脚本(例如,如果它是登录页面,我可能会添加一个脚本来检查登录详细信息是否有效)
考虑以下 MVC 3 Razor View 片段:
<!DOCTYPE html>
<html>
<head>
<link href="MyStyleSheet.css" rel="Stylesheet" type="text/css" />
<script type="text/javascript" src="jQueryAndOtherScripts.js"></script>
</head>
<body>
<div id="Container">
@RenderBody()
</div>
</body>
</html>
现在的问题... RenderBody() 替换<asp:ContentPlaceHolder ID="Content"></asp:ContentPlaceHolder>
,但我用什么来代替<asp:ContentPlaceHolder ID="Styles"></asp:ContentPlaceHolder>
and <asp:ContentPlaceHolder ID="Scripts"></asp:ContentPlaceHolder>
?