如何与发布的局部视图分开更新局部视图?

时间:2020-05-14 20:37:28

标签: c# model asp.net-mvc-5 controller partial-views

假设我有两个ViewModel,A和B。

public class ViewModel_A {...};
public class ViewModel_B {...};

每个视图模型都有自己的GET和POST函数,与该ViewModel的局部视图相对应。这些都是单个较大视图的一部分。

查看

<body>
     <div id="PartialView_A">
          @{Html.RenderAction("PartialView_A");}
     </div>

     <div id="PartialView_B">
          @{Html.RenderAction("PartialView_B");}
     </div>
</body>

型号

//GET  View Model A
public ActionResult PartialView_A() {...}

//POST View Model A
[HttpPost]
public ActionResult PartialView_A(ViewModel_A) {

     //CODE - Update Model A
     //CODE - Update Model B
     //CODE - Send a callback of some sort to the client?
     return View("partial_viewA", ViewModel_A);

}

//GET  View Model B
public ActionResult PartialView_B() {...}

//POST View Model B
[HttpPost]
public ActionResult PartialView_B(ViewModel_B) {
     return View("partial_viewB", ViewModel_B);
}

需要根据ViewModel A中的数据更新ViewModel B中的数据。反之则不成立。因此,将ViewModel A发布到服务器时,必须更新Partial View A和Partial ViewB。

为了使我的视图和代码更加模块化和灵活,并减少消耗的带宽,我选择在ViewModel A中不设置ViewModelB。

服务器是否可以通过告诉服务器为客户端提供更新的ViewModel B来告诉客户端调用部分视图B的POST函数?

0 个答案:

没有答案