Как добавить сервисную ссылку в библиотеку C #?

0

Если я добавлю ссылку на веб-службу на приложение С#, я могу создать экземпляр класса клиента и вызвать службу без каких-либо проблем. Однако, если я делаю то же самое с библиотекой С#, которая вызывается управляемой библиотекой C++, я получаю следующее сообщение об ошибке при попытке создать клиент:

Could not find default endpoint element that references contract 'ServiceReference1.IMyService' in the ServiceModel client configuration section. This might be because no configuration file was found for your application, or because no endpoint element matching this contract could be found in the client element.

Я проверил app.config, и запись конечной точки определенно находится в разделе клиента, поэтому я предполагаю, что проблема заключается в том, что сам app.config не ссылается, потому что он находится в библиотеке. Помните, что управляющее приложение управляется C++, что лучший способ заставить это работать?

Теги:
web
service
managed

1 ответ

1
Лучший ответ

Вы можете определить свою конечную точку в коде, если вы не планируете менять конечную точку:

    EndpointAddress address = new EndpointAddress("http://serviceEndpointUri");
    BasicHttpBinding binding = new BasicHttpBinding();

    using (ReferenceServiceClient client = new ReferenceServiceClient(binding, address))
    {
        ...
    }
  • 0
    Это сработало, спасибо Джон. Я полагаю, я мог бы получить разъяснения в виде "как мне ссылаться на файл app.config из библиотеки?" но это дубликат других вопросов на StackExchange, поэтому я отмечу это как ответ. Еще раз спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню