0

我已经在 IIS 7 下构建了 wcf 服务。

我对共享数据有疑问。

当我尝试从其他服务访问静态数据时,我在运行时遇到错误。

服务1

[ServiceContract(Name="ServiceChat", CallbackContract=typeof(IChatCallback))]
public ChatService { 
     static int counter;
     ...
}

服务 2

[ServiceContract(Name="ServiceAvatar", CallbackContract=typeof(IAvatarCallback))]
public AvatarService {
     [OperationContract] 
     public int Test {
          return ChatService.counter; // Throw error
     }
     ...
}
4

1 回答 1

0

据我了解。您希望在不同资源之间共享集中的静态数据。

为什么不使用 [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single)] 装饰您的 WCF 合同

这将只创建一个会话,并且所有客户端都通过同一个会话访问您的服务。

所以它就像他们都得到相同的来源。

希望这可以帮助。

于 2011-12-14T02:33:18.287 回答