从dll函数内部访问当前请求标头

时间:2017-01-06 15:18:08

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

我认为这应该相当简单,但由于某种原因我无法在Google上找到任何内容

我有一个可以读取请求标头的WebAPi 2.0控制器(类型:ApiController)

Request.Headers.GetValues("SomeHeader");

在同一个项目中,我有另一个类(AccessFactory),我想从中访问标题。

原因是我不希望为每个函数调用执行相同的代码,以便在实际需要时读取所有需要的头文件。

1 个答案:

答案 0 :(得分:0)

在单独的项目/ DLL中,您仍然可以使用System.Web.HttpContext.Current对象访问当前的HTTP上下文(以及请求标头)。

顺便说一句,我想补充一点,如果这个DLL可以在不同的应用程序中重用,那么考虑它是否会在非Web应用程序上使用,如果是这样的话,你应该避免在web上依赖 - 基于这样的上下文。相反,您可以考虑将所需的标头值作为简单类型或自定义对象传递。这样他们可以指示上下文,但非Web应用程序可以传递自己的等效上下文值。但这是一个单独的设计决策,取决于具体目的以及您打算将来如何使用此DLL库。

相关问题