WCF с интерфейсами в качестве параметров

Пожалуйста, не отвечайте ServiceKnownType, так как я не знаю, какой будет конкретная реализация.

Интерфейс предназначен для создания из контейнера ioc. Я создал ServiceHostFactory, который добавляет IInstanceProvider, который получает службу из контейнера.

Что я хочу знать, так это иметь возможность добавлять IInstanceProviders к вызовам параметров на стороне клиента.

    var factory = new WebChannelFactory<ITestService>(new Uri("http://localhost:30646/TestService.svc"));
    var service = factory.CreateChannel();
    var result = service.TestMethod("sdf");

Вот как я создаю прокси на стороне клиента. Представьте, что у меня есть возвращаемый тип ICustomType.

Есть ли способ указать вышеприведенной фабрике использовать определенного поставщика экземпляров при попытке создать интерфейсы? Таким образом, я могу вызвать свой контейнер для экземпляра.


person Paul Knopf    schedule 18.06.2011    source источник
comment
задал 80 вопросов и только 8 раз проголосовал?   -  person Mitch Wheat    schedule 18.06.2011


Ответы (1)


На стороне клиента нет модели IInstanceProvider — она предназначена для создания экземпляров служб, когда они требуются.

Вы можете получить от ChannelFactory и сделать там свое разрешение IoC.

кстати: вы знаете, что ServiceKnownType может принимать метод, а не тип, который может возвращать допустимые известные типы во время выполнения?

person Richard Blewett    schedule 18.06.2011
comment
Не видел перегрузки метода! Спасибо! - person Paul Knopf; 19.06.2011