Динамический вызов интерфейса и класса в службе WCF - PullRequest
0 голосов
/ 17 июня 2011

Я разместил свой сервис WCF как net.tcp: // ASSS-dd1-092: 5001 / WCFTestService ** Возможно ли на клиенте получить имя класса и имя интерфейса вместе с методом имя без добавления сервиса в качестве ссылки на сервис в моей ссылке на проект.

Другими словами, мы можем получить общий характер

1 Ответ

1 голос
/ 17 июня 2011

Да, если вы предоставляете конечную точку метаданных, вы можете потреблять метаданные вашим клиентом и создавать правильное сообщение в соответствии с метаданными, но это очень и очень сложно. Ваше универсальное решение означает, что вы не будете работать с классом или интерфейсом, но вы будете вручную создавать XML-сообщения в соответствии с раскрытым описанием, при этом вы будете определять конечную точку клиента вручную в соответствии с описанием.

Но тебе это действительно нужно? Как вы можете использовать общий сервис, если вы не знаете, какие данные вы должны передавать и получать и какие методы вы хотите вызвать? Я полагаю, что вы это знаете, и поэтому вы можете добавить договор на обслуживание и договор на передачу данных к своему клиенту - как только вы это сделаете, вы можете использовать ChannelFactory до , позвонить в службу . Если вы не знаете конфигурацию (привязку) службы, вы можете использовать распознаватель метаданных и если вы не знаете адрес (и, возможно, также привязку) службы, но знаете, что она находится на вашем сеть, которую вы можете использовать WCF Discovery .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...