WCF中的静态变量我有一些WCF服务。这些服务在ASP.NET中运行。我希望这些服务能够访问静态变量。我的问题是,我不确定正确的服务器级存储机制在哪里。我不想使用数据库来提高速度。但是,我希望静态变量尽可能长时间地保留在内存中。事实上,如果可能的话,我希望它一直存在到我重新启动服务器为止。任何人都可以提供任何想法吗?您可以在WCF中使用静态变量,但对它们的访问必须正确同步,因为它们可能同时从多个线程访问。存储在静态变量中的值可以从AppDomain中的任何地方访问,并保留在内存中,直到服务器重新启动。你可以有这样的东西publicstaticclassStaticVariables{privatestaticstring_variable1Key="variable1";publicstaticObjectVariable1{get{returnApplication[_variable1Key];}set{Application[_variable1Key]=value;}}}应用程序集合本身是线程安全的,但您添加的内容可能不是;所以记住这一点。如果所有服务都在一个ServiceContract下,并且服务中的所有成员变量都可以在所有会话之间共享,那么您可以将ServiceBehavior设置为具有单个实例。以上就是《C#学习教程:WCF中的静态变量》的全部内容。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注——[ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)]publicclassMyService:IMyServiceContract{}不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
