Как работает System.ServiceModel.Web.WebOperationContext, когда InstanceContextMode имеет значение Single?
Если моя служба WCF имеет этот атрибут:
[ServiceBehavior(
InstanceContextMode = InstanceContextMode.Single,
ConcurrencyMode = ConcurrencyMode.Multiple)]
Как могут следующие синглтоны работать во время разговора?
System.ServiceModel.Web.WebOperationContext.Current
1 ответ
Решение
Я не уверен, что именно вы спрашиваете... но контексты операций в WCF (все они) по умолчанию привязаны к потоку выполнения, поэтому, когда вы обращаетесь к нему (если он находится в обработке WCF) запрос) вы получите контекст, связанный с этими запросами.
Очевидно, ваш синглтон должен обрабатывать несколько одновременных запросов, и он будет иметь доступ к контексту операции каждого запроса в нужном потоке. Другими словами, большую часть времени он должен работать так, как ожидалось.