我在我的控制器中有两个操作方法。我希望两个都返回一个视图。MVC3两个控制器操作可以返回一个视图吗?
原因是因为我在我的视图中进行条件检查,检查一个属性是否为null,然后不显示div,如果用户单击加载按钮,则需要通过设置属性返回相同的视图显示模型,然后显示div。
该逻辑至少需要15次,我希望创建单独的操作来返回模型,但返回一个视图。可能吗?
我在我的控制器中有两个操作方法。我希望两个都返回一个视图。MVC3两个控制器操作可以返回一个视图吗?
原因是因为我在我的视图中进行条件检查,检查一个属性是否为null,然后不显示div,如果用户单击加载按钮,则需要通过设置属性返回相同的视图显示模型,然后显示div。
该逻辑至少需要15次,我希望创建单独的操作来返回模型,但返回一个视图。可能吗?
你只需要在你的return语句声明,视图名称:
public ActionResult SomeAction()
{
// do something
return View("SharedView", viewModel);
}
如果你有一个名为SharedView观点,在控制器的所有动作都可以访问它。如果要在其他控制器上的操作中共享它,可以在视图中使用共享文件夹,或者使用视图名称的状态完整路径。
这是一个msdn参考页面,[View Method] (HTTP://msdn.microsoft.c om/en-us/library/dd460310%28VS.98%29.aspx) – Roman 2012-01-09 00:28:52
return View("viewName", data);
第一个参数告诉框架,从中查看渲染和第2个参数用于为这一观点提供了数据
其次,你可以使用
return RedirectToAction("actionName",new{data=something});
Rick仔细阅读这个问题。其控制器行动。即在一个控制器中采用两种操作方法 – RollerCosta 2012-01-10 05:10:59
如果你想返回相同的观点与不同的viewmodels,我更喜欢传递一个参数,它允许我区分如何返回给定的视图,而不是创建单独的操作返回相同的视图... – 2012-01-08 21:40:17