首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IHttpActionResult vs HttpResponseMessage

IHttpActionResult vs HttpResponseMessage
EN

Stack Overflow用户
提问于 2017-09-11 23:25:57
回答 2查看 2.2K关注 0票数 1

我想再谈一谈关于IHttpActionResultHttpResponseMessage的区别。我知道IHttpActionResult在进行单元测试时更灵活,也更好用。但目前我正在做一个项目,这个项目是从WebAPI迁移到WebAPi 2的,我想尝试用IHttpActionResult取代所有HttpResponseMessage的用法。我在代码中找到了下面几行:

代码语言:javascript
复制
catch (Exception ex)
{
    return Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message);
}

我想澄清一下什么是与IHttpActionResult等效的方法。下面代码中的结果将等同于上面代码中的结果:

代码语言:javascript
复制
catch (Exception ex)
{
    return Content(HttpStatusCode.InternalServerError, ex.Message);
}

或者我应该使用其他东西?

EN

回答 2

Stack Overflow用户

发布于 2017-09-11 23:36:28

理想情况下,您应该将其包装在ResponseMessage中-帮助Content Negotiation

代码语言:javascript
复制
catch (Exception ex)
{
    return ResponseMessage(Request.CreateErrorResponse(HttpStatusCode.InternalServerError, ex.Message));
}
票数 3
EN

Stack Overflow用户

发布于 2017-09-12 00:08:38

如果您使用IHttpActionResult

代码语言:javascript
复制
catch (Exception ex)
{
    return (IHttpActionResult)InternalServerError(exception);
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46159197

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档