在_Layout中加载了Viewmodel的模态

时间:2018-03-01 06:27:35

标签: asp.net-mvc bootstrap-modal viewmodel

我遇到了以下问题:

我有一些使用viewmodels的模态。例如,使用LoginViewModel验证用户输入的LoginModal。

这个(在另一个旁边)模态在_Layout.cshtml中呈现为PartialView,因为它可以在任何页面上使用:

...        
Html.RenderPartial("~/Views/Shared/Modals/CartModal.cshtml");
Html.RenderPartial("~/Views/Shared/Modals/LoginModal.cshtml");
Html.RenderPartial("~/Views/Shared/Modals/AccountModal.cshtml");
...

我的起始页面使用自己的viewmodel列出事件。问题是,当尝试加载起始页时,会加载两个@ model-statements,因此应用程序崩溃。到目前为止,所有工作都是由HomeController完成的,在LoginModal中我使用的是Ajax.BeginForm。

我想知道如何解决这个问题并考虑在_Layout.cshtml中使用BaseViewModel,它包含其他视图模型。我会尝试使用

访问它们,例如,在LoginModal中
@Html.EditorFor(model => model.LoginViewModel.EMail, new { htmlAttributes = new { @class = "form-control", placeholder = "EMail", @id = "inputemail" } })

这可能是解决这个问题的正确/“最佳实践”方式吗?

0 个答案:

没有答案