为什么我应该在我的Web控制器中使用HttpRequestMessage?

时间:2016-01-26 04:41:56

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

当需要测试我的Web控制器时,我发现模拟HttpRequestMessage对象可能很痛苦。这是一个非常麻烦的对象,必须嘲笑。我也不喜欢Request对象进入函数的状态。

由于这些原因,我已经开始“忽略”请求对象并开始使用以下内容:

  • 实现ParameterBindingAttributes以获取对我想要的标题的特定访问权
  • 手动创建并返回HttpResponseMessage,而不是调用this.Response.CreateResponse(...)

我发现这使得我的代码更容易阅读并且更容易测试。

那就是说,在我进一步采用这种方法之前,我想确保没有任何明确的理由说明为什么我不应该像这样写我的代码。

  1. 除非我使用HttpRequestMessage,否则是否有任何特定信息难以访问?

  2. 我手动创建的HttpResponseMessage是否会丢失,因为它不是使用实例方法CreateResponse创建的?

  3. 有什么理由可以在将来再次咬我?

0 个答案:

没有答案