如何使用modelState发送自定义对象,或展开modelState对象

时间:2015-06-03 14:24:54

标签: c# asp.net asp.net-mvc-4 asp.net-web-api asp.net-web-api2

这是来自How to send a custom object from OnException method?

的后续问题

这是我目前的OnActionExecuting代码:

public override void OnActionExecuting(HttpActionContext actionContext)
{
   var modelState = actionContext.ModelState;

    if (!modelState.IsValid)
        actionContext.Response = actionContext.Request
             .CreateErrorResponse(HttpStatusCode.BadRequest, modelState);
}

我的所有WebAPI请求都使用此过滤器来检查模型是否有效。

如果没有,它将发送modelState对象(工作正常)。

我想要的是:我想在回复中发送以下modelState +我的自定义ErrorMsgModel

public class ErrorModel
{
    public string StatusMsg { get; set; }
    public int StatusCode { get; set; }
}

让我们创建一个ErrorModel类的对象:

ErrorModel StatusModel = new ErrorModel();
StatusModel.StatusCode = 500;
StatusModel.StatusMsg = "My Custom Msg";

所以最后,我想发回这个对象。类似的东西:

//return modelState + StatusModel;

或者只是手动将整数StatusCode附加到modelState对象。

怎么做?

0 个答案:

没有答案