Служба WCF, используемая в библиотеке классов, когда к ней обращается другая библиотека классов, выдает ошибку «Не удалось найти элемент конечной точки ...» - PullRequest
1 голос
/ 15 декабря 2011

У меня есть решение с тремя проектами:

  1. Приложение WPF
  2. Библиотека классов
  3. Библиотека классов тестирования NUnit

В библиотеке классов есть ссылки на службы, которые сгенерировали в app.config следующее:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <system.serviceModel>
    <bindings>
      etc, etc
    </bindings>
    <client>
      <endpoint address="http://localhost:8088/myService                
          binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_myService"
          contract="Namespace.myService" name="BasicHttpBinding_myService" />
    </client>
  </system.serviceModel>
</configuration>

В библиотеке классов есть функции, которые обращаются к этим службам, извлекают данные и упаковывают их для использования в приложении WPF.После копирования файла app.config из библиотеки классов в проект приложения WPF приложение WPF может без проблем использовать функции доступа к данным из библиотеки классов (перед копированием app.config я получил сообщение «Не удалось найти конечную точку по умолчанию»)сообщение об ошибке при попытке вызвать эти методы из приложения WPF).

При попытке вызвать те же самые функции в моей библиотеке тестирования и запустить их из NUnit, я получаю сообщение об ошибке типа "не удалось найтиэлемент конечной точки по умолчанию, который ссылается на контракт в разделе конфигурации клиента servicemodel ".Другие посты рекомендовали убедиться, что файл app.config был в проекте тестирования, но после того, как я это сделал, он все равно выдал то же сообщение об ошибке.Как я могу сделать эту работу?

1 Ответ

0 голосов
/ 15 декабря 2011

Проблема была не в настройке проекта, а в настройке проекта NUnit.

Когда я настраивал проект NUnit, я использовал опцию панели инструментов Project> Add Assemblies, чтобы добавить свойсборка для проекта NUnit (с использованием графического интерфейса NUnit).На этом этапе NUnit искал файл конфигурации в том же каталоге, в котором я сохранил настройки проекта NUnit.Это привело к ошибке, когда параметры конфигурации не могли быть найдены при необходимости.

Я решил эту проблему, перейдя в Project> Edit в графическом интерфейсе NUnit, а затем установив Project Base в каталог \ bin тестапроекта, и Имя файла конфигурации к имени файла файла конфигурации для проекта.После этого NUnit теперь смог найти нужный файл конфигурации при запуске моих тестов, решив проблему.

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