c# – HttpSelfHostServer和HttpContext.Current

我正在开发一个自主托管的ASP.NET Web api应用程序。
一切工作正常,但现在我正在努力使用HttpContext:

我需要从客户端保存会话信息。
但HttpContext.Current总是为空。
所以很明显,我的HttpSelfHostServer不能使用静态HttpContext-Class。

我不明白的是:为什么..?
我不知道一种方法来告诉HtttpSelfHostServer和HttpSelfHostConfiguration都不能使用HttpContext。

这就是我在做什么

>创建HttpSelfHostConfiguration

> 1.1添加服务解析器&路线
> 1.2添加自定义UserNamePassword-Validator

>使用配置创建新的HttpSelfHostServer实例

> 2.1 server.OpenAsync()。Wait()

任何帮助我怎么能告诉我的服务器工作与HttpContext.Current非常感谢!
干杯!

您将无法在自托管环境中使用HttpContext。 HttpContext由ASP.Net管道设置,如果您不在IIS / ASP.Net下运行,则不需要它。

HttpContext仅在Web主机模式下可用,HttpControllerHandler将在其中创建请求。

FYI-我邀请您阅读Pedro Felix的以下伟大文章,以更好地了解不同的托管模式:

> HTTP processing architecture overview
> Web-hosting
> Self-hosting

翻译自:https://stackoverflow.com/questions/11347807/httpselfhostserver-and-httpcontext-current

转载注明原文:c# – HttpSelfHostServer和HttpContext.Current