我可以为模型和控制器创建2个视图吗? 我目前的申请是MVC投诉,它只有一个视图。
我需要创建第二个GUI,从模型中获取少量信息(从第一个GUI数据更新),更新它并在第一个GUI中显示回来。
答案 0 :(得分:0)
每个操作可以有不同的视图。根据您的描述,这似乎是您正在寻找的。对于同一型号,您有不同的操作,没关系。
您可以为要更新的新信息添加新操作,然后单击鼠标右键并单击"添加视图"。它将为该操作添加新视图。
答案 1 :(得分:0)
最常见的方法是创建其他操作,每个操作对应一个要显示的视图。
您可以拥有任意数量的视图,只要您可以在它们之间进行路由。
默认情况下,行return View();
或return View(model)
将在此路径中查找视图:/ Views / {ControllerName} / {ActionName}。
您还可以指定视图名称,因为Controller.View()也接受一个字符串作为视图名称。
知道了这一点,您可以根据传递给您的操作的参数,从单个操作中显示不同的视图。
例如:
public ActionResult Example(bool a)
{
if (a) return View("a");
else return View("b");
}
如果a为真,则调用视图/Views/{ControllerName} / a.cshtml;如果a为假,则调用/Views/{ControllerName}/b.cshtml。
您还可以使用html帮助来调用第一个视图中的其他部分视图或操作:@Html.Partial({ViewName})
,@{Html.RenderPartial({ViewName});}
或@{Html.RenderAction({ActionName});}
编辑: View()还搜索/ Views / Shared / {ActionName}