Как я могу создать DynamicProxy для прокси WCF, сгенерированного ChannelFactory <T>? - PullRequest
3 голосов
/ 20 июля 2010

Я использую ChannelFactory для создания прокси во время выполнения для службы WCF. Я хотел бы использовать проект DynamicProxy Castle для создания динамического прокси поверх прокси WCF, чтобы я мог перехватывать вызовы и выполнять олицетворение.

Я получаю сообщение об ошибке, когда пытаюсь это сделать ... сообщение об ошибке:

Этот тип не может быть интерфейсом.

Мой код такой (где T - интерфейс контракта на обслуживание):

var generator = new ProxyGenerator();

return (T)generator.CreateInterfaceProxyWithTarget(typeof(T), channel, 
    new[] { new ImpersonationInterceptor() } );

Проблема должна быть связана с тем фактом, что служебный прокси-сервер, сгенерированный ChannelFactory, создается во время выполнения, но есть ли способ обойти эту проблему?

1 Ответ

0 голосов
/ 20 июля 2010

Да - есть - используйте WCF Facility, он заменяет прокси WCF на DynamicProxy Касла.

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

...