如何使变量(对象)在网络服务的整个生命周期内可用?
静态变量似乎可以工作,但有其他方法吗?
最佳答案
静态变量在包含它们的应用程序域的生命周期内存在。对于 Web 服务,这通常是 ASP.Net Worker Process。这意味着当 IIS 决定循环工作进程时,您的静态变量将消失。这可能是您想要的,在这种情况下它可能是一个不错的选择。 (暂且不讨论静态变量在给定上下文中是否合适)。
在网络服务范围内,您还可以访问 HttpApplicationState通过 Application 属性(这将是一个 asmx 服务......不确定 WCF 是否相同),所以这也是一个很好的选择,用于存储服务生命周期所需的东西。
关于c# - 在 web 服务的生命周期内共享 web 服务变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/292831/