加载后将数据传递给局部视图

时间:2015-11-29 10:28:16

标签: asp.net-mvc-4

有没有办法可以在渲染后将数据传递给局部视图。我在我的_Layout中有一个部分视图,它被渲染。它需要isHeaderShown。但是,此isHeaderShown只能在调用@RenderBody后设置,因为只有正文控制器才有此信息。

我的布局。

@{Html.RenderAction("Index","_Menu", new { area = ""});}

@RenderBody()

1 个答案:

答案 0 :(得分:0)

  

有没有办法可以在渲染后将数据传递给局部视图。

不使用服务器端。您总是可以使用javascript向服务器发出AJAX请求,然后使用从服务器收到的结果更新DOM的某些部分。在视图已经在浏览器中呈现之后,这显然会在稍后阶段发生。另一种与AJAX不同的常用技术是使用HTML5 WebSockets将一些数据推送到客户端的服务器。你可以看看SignalR。在这两种情况下,您都需要编写javascript。