会话变量和Web服务
时间:2020-03-06 14:47:40 来源:igfitidea点击:
我只是写了我的第一个Web服务,所以让我们假设我的Web服务知识不存在。我想尝试从Web服务调用dbClass函数。但是,我需要会话中的一些参数。有什么办法可以让我从Web服务中调用这些会话变量?
解决方案
也许这可以正常工作HttpContext.Current.Session [" Name]
否则,我们可能需要输入一些参数或者将其存储在数据库中
如果我们使用的是ASP.NET Web服务,并且希望为我们维护会话环境,则需要使用指示我们需要会话的属性来修饰Web服务方法。
[WebMethod(EnableSession = true)] public void MyWebService() { Foo foo; Session["MyObjectName"] = new Foo(); foo = Session["MyObjectName"] as Foo; }
完成此操作后,我们可以访问类似于aspx的会话对象。
地铁。
通常,Web服务不应依赖会话数据。将它们视为普通方法:输入参数并给出答案。
问题有点含糊,但我会尽力回答。
我假设会话变量存在于进行Web服务调用的服务器上,而不存在于承载Web服务的服务器上。在这种情况下,我们将需要传递必要的值作为Web服务方法的参数。
我们应该避免增加添加会话变量的服务层的复杂性。正如之前指出的那样,可以将Web服务视为隔离的方法,这些方法从其参数列表中获取执行任务所需的所有内容。