У меня есть набор существующих служб WCF, размещенных в приложении .NET 3.0. Они используют привязки WSHttp и не имеют защиты.
Мне нужно подключиться к ним из клиента .NET 3.5. Похоже, что это нормально работает для односторонних служб, но у меня также есть некоторые службы обратного вызова (с CallbackContract и SessionMode = Required, используя WSDualHttpBinding); они не могут соединиться с таймаутом где-нибудь в коде ReliableSession.
Сервисная сторона не может быть изменена (это историческая проблема версии). Могу ли я что-то изменить на стороне клиента, чтобы это работало? (Я могу нормально подключиться к клиенту .NET 3.0, но я не буду пытаться использовать этот путь.)
The open operation did not complete within the allotted timeout of 00:00:09.9410000.
The time allotted to this operation may have been a portion of a longer timeout.
Server stack trace:
at System.ServiceModel.Channels.ReliableRequestor.ThrowTimeoutException()
at System.ServiceModel.Channels.ReliableRequestor.Request(TimeSpan timeout)
at System.ServiceModel.Channels.ClientReliableSession.Open(TimeSpan timeout)
at System.ServiceModel.Channels.ClientReliableDuplexSessionChannel.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)
at System.ServiceModel.Channels.ServiceChannel.OnOpen(TimeSpan timeout)
at System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan timeout)