InstanceContextMode设置为PerSession时,如何为所有客户端运行一次WCF服务构造函数?当ServiceBehaviorAttribute.InstanceContextMode设置为PerSession时,如何在WCF服务的构造函数中仅运行一次代码?[ServiceBehavior(InstanceContextMode=InstanceContextMode.PerSession,ConcurrencyMode=ConcurrencyMode.Single)]publicclassSomeService:ISomeService{publicSomeService(){this.RunThisOnceForAllClients();}privatevoidRunThisOnceForAllClients(){}}或者,如何在WCF服务自动运行方法之后运行,但只为调用它的所有客户端运行一次?请帮忙。提前致谢。我使用ManagedWindowsService部署我的WCF服务。我的代码在C#中。该框架在.NET4中。该项目是在VisualStuido2010Professional中构建的。该服务由Windows窗体应用程序使用。如果你想知道为什么我需要这样做,我需要执行一个Uploader方法将服务的数据库上传到另一个服务,但是它会在一定时间内执行,所以我把它放在另一个线程中只要当服务正在运行时,它将继续运行。为什么不在Windows服务中托管WCF服务之前运行它,以便WCF服务一上线就准备就绪。您可以从正在运行的线程中获取已完成的事件,然后部署WCF服务。您需要编写服务行为或端点行为。在此行为中,首先从客户端调用该函数,并将变量设置为true并存储在某个永久内存或文件位置。您可以查看以下有关使用静态构造函数扩展WCF的msdn文章?当代码中包含此类的任何操作时(之前),它将被调用一次。以上是C#学习教程:当InstanceContextMode设置为PerSession时,如何为所有客户端运行一次WCF服务构造函数?如果所有分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
