C# 设置WebAPI中每个请求仅存在于应用程序中的变量
我正在使用带SSL的基本身份验证来保护使用ASP.NET WebAPI的API。我不想使用Cookie或会话变量,但我需要在请求的生命周期内具有一些可用和可访问的凭据 我有一个RoleProvider和一个access ActionFilter,还有一个对我的存储库的调用,这些都需要访问这些数据C# 设置WebAPI中每个请求仅存在于应用程序中的变量,c#,asp.net,asp.net-web-api,C#,Asp.net,Asp.net Web Api,我正在使用带SSL的基本身份验证来保护使用ASP.NET WebAPI的API。我不想使用Cookie或会话变量,但我需要在请求的生命周期内具有一些可用和可访问的凭据 我有一个RoleProvider和一个access ActionFilter,还有一个对我的存储库的调用,这些都需要访问这些数据 我如何才能做到这一点?有什么原因不能将它们放入请求上下文中吗 HttpContext.Current.Items.Add("credentials", CredentialObject); 编辑:不要
我如何才能做到这一点?有什么原因不能将它们放入请求上下文中吗
HttpContext.Current.Items.Add("credentials", CredentialObject);
编辑:不要使用我上面的建议。请参阅评论中的链接,以获得更好的、可测试的答案。将HttpContext与WebApi一起使用被认为是不好的做法。很难进行单元测试,并且限制您仅在IIS上运行WebApi应用程序。@JoshNoe我可以问一下您建议使用什么吗?@david.barkhuizen: