2
我已将项目和一组单元测试从ASP.NET Web API升级到ASP.NET Web API 2.ASP.NET Web API 2中的AuthorizeAttribute发生了哪些变化?
我们使用自定义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
?
这很好,谢谢。 – tjrobinson
谢谢!这花了WAY,WAY太长时间了。每个人都+1这个答案和这个问题! – jhilden