在_Layout.cshtml文件中,我在主体底部有一个名为"ScriptsContent"的部分,声明如下:
@RenderSection("ScriptsContent", required: false)
Run Code Online (Sandbox Code Playgroud)
在我看来,我可以使用此部分添加要执行的脚本.但是,如果我还有一个PartialView也需要使用此部分来添加其他脚本呢?
视图
@section ScriptsContent
{
<script type="text/javascript">
alert(1);
</script>
}
@Html.Partial("PartialView")
Run Code Online (Sandbox Code Playgroud)
PartialView
@section ScriptsContent
{
<script type="text/javascript">
alert(2);
</script>
}
Run Code Online (Sandbox Code Playgroud)
结果
仅渲染第一个脚本.第二个脚本不存在于网页的源代码中.
Razor似乎只输出他看到的第一个@section ScriptsContent.我想知道的是,是否有办法将每个调用合并到该部分.
如果我们不能这样做,你有什么建议?
感谢您的帮助!
UPDATE
我找到了一些解决问题的代码.请参阅下面的答案.