我在Global.asax类中使用对象Application来存储数据。
Application.Set("data", "test");
现在,在我的WCF服务中,我希望能够阅读此属性。我怎么能这样做?
Application["data"];
在调试中,我可以看到我的global.asax被调用(Begin_Request),但在我的webservice方法中,我如何访问应用程序?
答案 0 :(得分:4)
var yourData=HttpContext.Current.Application["data"];
请记住,无论如何,如果您将在服务器场上部署服务,您可能会遇到问题,因为应用程序是inProc并且每个服务器都有自己的应用程序变量
答案 1 :(得分:4)
为了让HttpContext.Current与wcf一起工作,你必须启用兼容性:
<system.serviceModel>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
</system.serviceModel>
然后你可以访问Massimiliano Peluso建议:
// in the wcf service
var yourData=HttpContext.Current.Application["data"];