【发布时间】:2013-11-22 10:35:38
【问题描述】:
我已将一个项目和一组单元测试从 ASP.NET Web API 升级到 ASP.NET Web API 2。
我们正在使用自定义DelegatingHandler 来实现自定义身份验证机制。
它将Thread.CurrentPrincipal 和HttpContext.Current.User 设置为适当的System.Security.Claims.ClaimsPrincipal。
- 在 IIS 中托管时,即正常运行时,两者都已设置。
- 在单元测试中,只设置了
Thread.CurrentPrincipal,因为HttpContext.Current是null。
自从升级到 ASP.NET Web API 2 后,没有其他代码更改,Web 托管版本运行良好,但单元测试失败。他们在升级之前工作。
ASP.NET Web API 2 现在是否要求在HttpContext 中设置主体?
【问题讨论】:
标签: c# asp.net unit-testing asp.net-web-api