如何拆分WCF服务';s的操作收缩为单个和多个并发模式

如何拆分WCF服务';s的操作收缩为单个和多个并发模式,wcf,concurrency,singleton,Wcf,Concurrency,Singleton,我有一个服务A和两个操作合同CheckServer和AddService。因为服务是单例的,Concurrey模式是单例的 [ServiceBehavior(ConcurrencyMode=ConcurrencyMode.Single)] 这里我的要求是只允许一次安装AddService,所以我把它作为singleton。现在CheckServvice不必是单例的,所以我如何分割这两个方法实现,使AddService成为单例,CheckService成为多个 提前感谢WCF不会提供您想要的。将该

我有一个服务A和两个操作合同CheckServer和AddService。因为服务是单例的,Concurrey模式是单例的 [ServiceBehavior(ConcurrencyMode=ConcurrencyMode.Single)]

这里我的要求是只允许一次安装AddService,所以我把它作为singleton。现在CheckServvice不必是单例的,所以我如何分割这两个方法实现,使AddService成为单例,CheckService成为多个


提前感谢

WCF不会提供您想要的。将该逻辑置于WCF之外,并编写自己的同步逻辑。例如,实现单例类公开
CheckService
AddService
,其中同步将直接在
AddService
方法中进行,并且
CheckService
方法将可以自由调用

制作标准的WCF每次呼叫服务,将处理委托给singleton类

public Class Service : Iservice
{
   public bool CheckService()
    {
       //Checks server avilabality and returns bool value
    }

   public int AddService(int a, int b)
    {
      return int i = a + b;
    }
}