Как получить доступ к общим статическим данным из нескольких служб - PullRequest
0 голосов
/ 14 декабря 2011

Я создал службу wcf под IIS 7.

У меня проблема с общими данными.

Я получаю ошибку во время выполнения, когда пытаюсь получить доступ к статическим данным из другого сервиса.

Сервис 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
     }
     ...
}

1 Ответ

0 голосов
/ 14 декабря 2011

Согласно моему пониманию.Вы хотите совместно использовать централизованные статические данные между различными ресурсами.

Почему вы не украшаете свой контракт WCF с помощью [ServiceBehavior (InstanceContextMode = InstanceContextMode.Single)]

Это создаст только один сеанс и всеклиенты получают доступ к вашим услугам через один и тот же сеанс.

Так что, похоже, все они получают один и тот же источник.

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...