Как работает System.ServiceModel.Web.WebOperationContext, когда InstanceContextMode имеет значение Single?

Если моя служба WCF имеет этот атрибут:

[ServiceBehavior(
     InstanceContextMode = InstanceContextMode.Single,
     ConcurrencyMode = ConcurrencyMode.Multiple)]

Как могут следующие синглтоны работать во время разговора?

System.ServiceModel.Web.WebOperationContext.Current

1 ответ

Решение

Я не уверен, что именно вы спрашиваете... но контексты операций в WCF (все они) по умолчанию привязаны к потоку выполнения, поэтому, когда вы обращаетесь к нему (если он находится в обработке WCF) запрос) вы получите контекст, связанный с этими запросами.

Очевидно, ваш синглтон должен обрабатывать несколько одновременных запросов, и он будет иметь доступ к контексту операции каждого запроса в нужном потоке. Другими словами, большую часть времени он должен работать так, как ожидалось.

Другие вопросы по тегам