[WCF] Использование callback'a только там где необходимо
От: Аноним  
Дата: 23.02.07 09:40
Оценка:
Здравствуйте

Есть небольшой вопрос. Используется WCF, в качестве ServiceContract используется интерфейс для которого указан CallbackContract.


    [ServiceContract(CallbackContract = typeof(ISomeServiceCallback))]
    public interface ISomeService {


Теперь на клиенте мы создаем класс который наследуется от DuplexClientBase,
    public partial class SomeServiceProxy : DuplexClientBase<ISomeService>, ISomeService {

При создании прокси таким способом мы вынуждены всегда указывать какой-то объект, который реализует ISomeServiceCallback и будет использоваться на сервере. Но на самом деле callback нужен не для всех операций на сервере. Можно ли что-что сделать чтобы указывать объект опционально? Например:
и
SomeServiceProxy ssProxy = new SomeServiceProxy(context, binding, address);

и
SomeServiceProxy ssProxy = new SomeServiceProxy(binding, address);


Можно унаследовать класс прокси от класса ClientBase<>, в нем есть такие перегруженные конструкторы. Класс создается нормально, но при попытке вызвать любой метод, который даже не использует CallbackContract получаем исключение "ChannelFactory does not support the contract ISomeService as it defines a callback contract with one or more operations. Please consider using DuplexChannelFactory instead of ChannelFactory."

Возможно ли использовать wcf сервис с таким контрактом (ISomeService) не указывая на клиенте никакого класса для Callback?
Re: [WCF] Использование callback'a только там где необходимо
От: Аноним  
Дата: 25.02.07 09:38
Оценка:
up!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.