如何在WCF中使用ASP.NET会话?或者有没有其他方法可以在WCF中使用“ASP.NET Session”结构,例如数据存储?
答案 0 :(得分:3)
您不能使用ASP.NET会话,因为您可以轻松地运行WCF服务而无需启动ASP.NET引擎,例如。使用netTcpBinding。
然而,在WCF中存在本地会话处理,您可以使用ServiceContract属性上的SessionMode参数在服务协定上指定此处。
有关详细信息,请参阅http://msdn.microsoft.com/en-us/library/ms733040.aspx
答案 1 :(得分:3)
尝试使用WCF查看ASPCompatibityMode,然后打开它并在服务方法中共享会话
答案 2 :(得分:0)
如果有人仍然面临此问题(尝试在使用WCF服务的.NET Web App中使用SESSION变量)。不要担心[AspNetCompatibilityRequirements .......]或在web.config中添加aspNetCompatibilityEnabled =“true”。
在玩了一段时间之后,我发现我所要做的就是将_______。ASMX.CS中的每个[WebMethod]更改为[WebMethod(EnableSession = true)]。
因此将[WebMethod]更改为[WebMethod(EnableSession = true)]。而已。
我从http://weblogs.asp.net/stevewellens/archive/2009/04/05/using-session-state-in-a-web-service.aspx
发现了这一点谢谢!