为了账号安全,请及时绑定邮箱和手机立即绑定

使用Razor View引擎从部分视图ASP.NETMVC 3中将内容注入特定部分

使用Razor View引擎从部分视图ASP.NETMVC 3中将内容注入特定部分

慕侠2389804 2019-06-25 14:29:50
使用Razor View引擎从部分视图ASP.NETMVC 3中将内容注入特定部分我在我的_Layout.cshtml@RenderSection("Scripts", false)我可以很容易地从一个角度来使用它:@section Scripts {      @*Stuff comes here*@}我正在挣扎的是如何从部分视图中将一些内容注入到本节中。让我们假设这是我的视图页面:@section Scripts {      <script>         //code comes here     </script>}<div>     poo bar poo</div><div>   @Html.Partial("_myPartial")</div>我需要在Scripts一节_myPartial部分视图。我该怎么做?
查看完整描述

3 回答

?
忽然笑

TA贡献1806条经验 获得超5个赞

部分视图中的部分不工作,这是由设计完成的。你可以用一些定制帮手为了实现类似的行为,但是老实说,包含必要的脚本是视图的责任,而不是部分的责任。我建议使用主视图的@Scripts部分来做到这一点,而不让Parals担心脚本。


查看完整回答
反对 回复 2019-06-25
?
德玛西亚99

TA贡献1770条经验 获得超3个赞

这是一个很受欢迎的问题,所以我会张贴我的解决方案。
我也遇到了同样的问题,虽然这并不理想,但我认为它实际上运行得很好,而且不部分依赖于视图。
我的设想是,一个动作本身是可以访问的,但也可以嵌入到一个视图中-谷歌地图。

在我的_layout我有:

@RenderSection("body_scripts", false)

在我的index我认为:

@Html.Partial("Clients")@section body_scripts{
    @Html.Partial("Clients_Scripts")}

在我的clients看我有(所有的地图和阿索克。(HTML):

@section body_scripts{
    @Html.Partial("Clients_Scripts")}

我的Clients_Scripts视图包含要呈现到页面上的javascript。

通过这种方式,我的脚本是孤立的,并且可以在需要的地方将其呈现到页面中,并使用body_scripts标记只在剃刀视图引擎找到它的第一次出现时呈现。

这让我把所有的东西都分开了-这是一个对我很好的解决方案,其他人可能会有问题,但它确实修补了“按设计”的漏洞。


查看完整回答
反对 回复 2019-06-25
  • 3 回答
  • 0 关注
  • 448 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信