Вопрос справки службы WCF о производстве в консольном приложении - PullRequest
0 голосов
/ 15 декабря 2010

У меня есть 1 проект консольного приложения c #, в котором есть Program.cs (который содержит метод main), метод main просто вызывает метод веб-службы и отображает строку в консоли.

Ссылка на услугу добавляется в проект, если щелкнуть ее правой кнопкой мыши и добавить ссылку на услугу.

  • когда консольное приложение выполняется в режиме отладки из Visual Studio, оно работает как положено.

  • , когда консольное приложение выполняется из файла .exe, найденного в / bin / debug, оно работает как положено.

пока все хорошо.

ПРОБЛЕМА:

когда проект копируется в систему (вы можете назвать это производственной средой), где этот exe-файл будет фактически выполнен, он завершится неудачно в той же строке, где я создаю объект прокси-сервера службы. строка в Program.cs:

ProjectName.ServiceReference.ServiceClient service = new ProjectName.ServiceReference.ServiceClient ();

Я знаю, что это терпит неудачу здесь, потому что у меня есть Console.Writeline ("некоторая строка"); до и после вышеуказанной строки. Я вижу Console.Writeline, который находится перед строкой прокси, и вскоре после этого происходит сбой ...

Я думаю, это потому, что ссылочные пути, которые ссылаются на службу, есть ли что-то, что я могу сделать, чтобы изменить пути или подтвердить, что это проблема пути, как подозревается ... ??

есть идеи, что не так .. ???

1 Ответ

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

Проверьте эту ссылку: http://blog.davidsandor.com/post/Workaround-The-configuration-for-the-servicee280a6Unrecognized-element-e28098extendedProtectionPolicye28099.aspx

Не удалось обновить конфигурацию для справочной службы к следующей проблеме: нераспознанный элемент 'ExtendedProtectionPolicy. (App.config / Web.config)

Кажется, нет действительно четкой причины, почему это происходит Однако, похоже, что это связано с Windows 7. Я не уверен, что .NET Framework, который поставляется с Win7, имеет некоторые другие настройки или шаблон для файлов политики конфигурации WCF, но, похоже, это виновник. Может быть, файлы machine.config разные на Win 7 и инструменты настройки WCF используют machine.config как своего рода шаблон политики.

Исправление раздражает (потому что каждый раз, когда вы строите свое решение на Windows 7, а затем перестроить на Vista, вы должны повторить это).

Удалить строку:

<extendedProtectionPolicy policyEnforcement="Never" />

из файла App / Web.config на клиенте и в WCF файл Web.config сервера.

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