在 Web 服务的生命周期内共享 Web 服务变量?
Posted
技术标签:
【中文标题】在 Web 服务的生命周期内共享 Web 服务变量?【英文标题】:Web service variable shared for the lifetime of the webservice? 【发布时间】:2008-11-15 17:56:44 【问题描述】:如何使变量(对象)在 Web 服务的整个生命周期内都可用?
静态变量似乎可以工作,但还有其他方法吗?
【问题讨论】:
【参考方案1】:静态变量存在于包含它们的应用程序域的生命周期中。对于 Web 服务,这通常是 ASP.Net 工作进程。这意味着当 IIS 决定循环工作进程时,您的静态变量将消失。这可能是您想要的,在这种情况下,它可能是一个不错的选择。 (暂且不谈静态变量在给定上下文中是否合适的讨论)。
在 Web 服务的范围内,您还可以通过 Application 属性访问HttpApplicationState(这将是一个 asmx 服务...不确定 WCF 是否相同),所以这也可能是一个存放服务生命周期所需内容的好选择。
【讨论】:
【参考方案2】:一个使用 HttpApplicationState 的单身人士应该会工作
【讨论】:
【参考方案3】:可能,但如果静态变量有效,则继续下一个问题! :)
【讨论】:
以上是关于在 Web 服务的生命周期内共享 Web 服务变量?的主要内容,如果未能解决你的问题,请参考以下文章