当前位置:  开发笔记 > 编程语言 > 正文

OData WebApi 2错误处理

如何解决《ODataWebApi2错误处理》经验,为你挑选了0个好方法。

在我的Web服务中,我重写了ExceptionHandler,但是我不清楚如何格式化异常以适应OData Error标准.也许我接近它错了,因为我在网上找不到任何例子.

根据我的理解,使用web api 2有一个全局异常处理的概念,您可以使用自定义ExceptionHandler来处理服务中引发的任何异常.仍然期望Exception使用新的IHttpActionResult()更新ExceptionContext.Result.如何格式化输入到IHttpActionResult的数据以格式化为OData错误.

下面是ExceptionHandler的一个片段,我坚持你将如何使用正确的OData HttpResponse消息覆盖context.Result.

public class CustomExceptionHandler: ExceptionHandler
{
    public override void Handle(ExceptionHandlerContext context)
    {
        HttpResponseMessage msg = context.Request.CreateErrorResponse(HttpStatusCode.NotFound, new ODataError
        {
            ErrorCode = context.Exception.Message,
            Message = context.Exception.InnerException.Message,
            InnerError = new ODataInnerError
            {
                Message = context.Exception.InnerException.Message
            }
        });
        context.Result = //How do you wrap the OData HttpResponseMessage into a IHttpActionResult

    }


}

任何建议赞赏,谢谢,D

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有