在对现有C#WCF Web服务进行故障排除时,我将问题跟踪到[ThreadStatic]
变量。该变量跨多个层和函数进行修改。当变量损坏时,在线程上运行的所有连续HTTP调用都会发生异常。回收应用程序池可以解决问题,直到变量再次损坏。
现在我正在寻找另一种选择。理想情况下,一个与HTTP请求具有相同生命周期的属性包,以便我们可以确保未来的HTTP调用不受早期HTTP调用的影响。我遇到OperationContext.Current.IncomingMessageProperties
这似乎在测试期间工作正常,但名称表明它适用于消息属性,而不是应用程序变量。
如何在HTTP请求的生命周期内存储变量?