ApiResultAttribute.cs
1.07 KB
using System.Net;
using System.Net.Http;
using System.Web.Http.Filters;
namespace HH_WCS_Standard
{
public class ApiResultAttribute : ActionFilterAttribute
{
public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
{
if (actionExecutedContext.Exception != null)
return;
base.OnActionExecuted(actionExecutedContext);
HttpStatusCode Code;
var bllResult = actionExecutedContext.ActionContext.Response.Content.ReadAsAsync<BllResult>().Result;
if (bllResult.Success)
{
Code = HttpStatusCode.OK;
}
else
{
Code = HttpStatusCode.BadRequest;
}
ApiResultModel result = new ApiResultModel(Code, bllResult.Data, bllResult.Msg);
//回复ok是指收到了请求,但是具体业务是否成功,要看result中的state
actionExecutedContext.Response = actionExecutedContext.Request.CreateResponse(HttpStatusCode.OK, result);
}
}
}