动作在控制器中可以有多个视图吗?

时间:2018-07-10 17:09:29

标签: asp.net-mvc view action

我想使用一个将id作为参数并检查id是否为null的动作。如果id为null,则需要传递一个模型列表(例如,人模型),如果不是,则需要传递一个模型。我需要使用2个视图进行操作,其中一个将模型视为IEnumerable,而另一个仅将模型作为一个模型。我已经通过使用2个动作解决了这个问题,但是我想知道是否有更简单的方法?谢谢。

1 个答案:

答案 0 :(得分:2)

是的,您只需要指定视图的名称,例如:

public ActionResult SomeAction(int? id)
{
    if(id.HasValue}
    {
        var item = GetSingleItem(id);
        return View("SingleModelView", item);
    }   
    else
    {
        var listOfItems = GetAllItems();
        return View("EnumerableModelView", listOfItems)
    }
}