我不知道这是否是处理某事的正确方法,但我希望它是。下面的示例是一个重型控制器,绝对是错误的方法,但它得到了我正在寻找的想法。
public class PeopleController : Controller
{
public ActionResult List(string? api)
{
MyViewModel Model = new MyViewModel();
if (api == "json") {
// I'd like to return the Model as JSON
} else if (api == "XML") {
// I'd like to return the Model as XML
} else {
return View(Model);
}
}
}
现在我需要做的是将模型返回给视图,如果它被这样请求:
但如果这样请求它,我希望它输出 JSON:
如果这样请求,或者输出 XML:
这完全是错误的吗?如果没有,实现这一目标的最佳方法是什么?
我正在考虑使用MultiPurposeResult
可以为我完成所有过滤然后返回它的自定义来实现它
public class PeopleController : Controller
{
public MultiPurposeResult List(string? api)
{
MyViewModel Model = new MyViewModel();
return MultiPurpose(Model); }
}
}