我是MVC的新手,我正在实现一个包含大量AJAX和部分视图的Web应用程序。
我有2个视图:1个基本视图和1个局部视图。每个视图都有自己的控制器。基本视图通过Model将数据发送到局部视图。
我想让局部视图/控制器将数据发送到基本视图/控制器。最好的方法是什么?有没有办法从局部视图操作刷新基本视图?
public ActionResult SendDataToBaseView()
{
return View("BaseView", viewModel);
}
答案 0 :(得分:1)
目前还不太清楚你的设置是什么。
如果您正在更新从主视图呈现的HTML,那么您可能在同一控制器上有另一个控制器操作,您在该控制器上调用了一个动作来呈现基本视图。这个其他控制器操作可能返回JSON或HTML(也许是部分视图),在客户端负责获取AJAX调用的结果并填充由基本视图呈现的页面部分新数据。
以下是我想要采取的步骤
BaseController
和操作Index
Html.RenderPartial()
,Html.RenderAction()
或Html.Action()
BaseController
Update
操作,该操作返回包含数据的JsonResult
,可用于更新基本视图输出的部分响应。