如何根据Action方法中的条件返回不同的视图?

时间:2011-08-10 13:54:03

标签: c# asp.net-mvc-3

我的索引操作方法返回一个显示QuestionViewModel对象列表的视图。每个QuestionViewModel对象都有一个Question_Type属性:

public Question_Type Question_Type { get; set; }

当用户按下编辑按钮时,我想根据该问题类型返回不同的视图。例如,如果一个问题类型为“多选”,我想返回一个使用以下内容的视图:

@model EditMCQQuestionViewModel

如果问题是“Matrix”类型,我想返回一个使用

的视图
@model EditMatrixQuestionViewModel

这可以通过单一动作方法实现吗?

1 个答案:

答案 0 :(得分:1)

您可以传递视图名称

if (isMultiChoiceQuestion)
{    

    return View("MultiChoiceView", multiChoiceData);
}
if (isMatrixQuestion)
{    

    return View("MatrixView", matrixData);
}

您可以使用相同的视图,只需传入不同的视图模型。