Исправление: URI в документе WCF WSDL ссылаются на недоступные внутренних экземпляры вместо того, для балансировки нагрузки должным образом в .NET Framework 3.0 в Windows Server 2003, Windows XP, Windows Vista и Windows Server 2008

Переводы статьи Переводы статьи
Код статьи: 971842 - Vizualiza?i produsele pentru care se aplic? acest articol.
Развернуть все | Свернуть все

В этой статье

Проблема

При использовании службы Windows Communication Foundation (WCF) в сценариях с балансировкой нагрузки в Microsoft .NET Framework 3.0 в Windows Server 2003, Windows XP, Windows Vista и Windows Server 2008, возникают следующие проблемы:

Проблема 1

Рассмотрим описанную ниже ситуацию.:
  • После установки Windows и Windows Azure SDK Azure средств для Microsoft Visual Studio.
  • Создание проекта веб-службы облако и добавьте в проект службы Windows Communication Foundation (WCF).
  • Отладка проекта разработки инфраструктуры.
  • Перейдите к документу языка определения веб-служб (WSDL) от WCF службы.
В этом случае можно заметить, что URI в WSDL-документ ссылается на недоступный внутренний веб-узел экземпляров (http://127.0.0.1:5001/Service.svc?wsdl). Тем не менее, идентификаторы URI предполагается в документе WSDL для обращения к балансировки нагрузки (http://127.0.0.1:81/Service.svc?wsdl). Кроме того, при попытке добавить ссылку на службу, появляется уведомление о сбое вДобавьте Ссылку на службу«Свойства системы»..

Проблема 2.

Рассмотрим описанную ниже ситуацию.:
  • Размещения службы WCF в экземпляре за выравнивателя загрузки.
  • Команда “ Add Service Reference ” илиsvcutil.exeсредство командной строки для загрузки метаданных службы.
В этом случае при попытке создать прокси из метаданных, процесс не, поскольку метаданные содержат идентификаторы URI, экземпляры ссылку на внутренний веб-узел.

Причина

Балансировщик нагрузки осуществляется извне возникать проблемы, описанные в разделе «Проблема». Тем не менее экземпляры внутреннего веб-узла за балансировщик нагрузки недоступны.

Решение

Сведения об исправлении

Вам доступно исправление от корпорации Майкрософт.. Это исправление предназначено для устранения проблемы, описанной в этой статье.. Его необходимо применять только в тех системах, в которых наблюдается данная проблема.. Исправление может проходить дополнительное тестирование.. Таким образом эта проблема не является постоянной для вас, мы рекомендуем дождаться следующего автоматического обновления программного обеспечения, содержащего это исправление..

Загрузить это исправление из коллекции кода MSDN можно на следующем веб-сайте корпорации Майкрософт::
http://Code.MSDN.Microsoft.com/KB971842

Примечание.Коллекции кода MSDN отображаются языки, для которых доступно исправление. Если нужный язык не отображается, значит страница коллекции кода для этого языка отсутствует..

Примечание.Другие проблемы или если требуется устранить неполадки, возможно, потребуется создать отдельный запрос. Дополнительные услуги по технической поддержке, не связанные с данным исправлением, оплачиваются вами дополнительно.. Полный список телефонов поддержки и обслуживания клиентов Microsoft или информацию по созданию отдельного запроса на обслуживание вы можете найти на веб-сайте Майкрософт::
http://support.microsoft.com/contactus/?ws=support

Предвартельные требования

o это исправление, необходимо установить .NET Framework 3.5 с пакетом обновления 1 (SP1) или .NET Framework 3.0 пакет обновления 2 (SP2) на одно из следующих операционных систем:
  • Windows XP
  • Windows Server 2003:
  • Пакет обновления 2 (SP2) для Windows Vista
  • Windows Server 2008 с пакетом обновления 2 (SP2)

Примечание.Для Windows 7 или Window Server 2008 R2 версия данного исправления щелкните следующий номер статьи базы знаний Майкрософт:
981002Доступен накопительный пакет исправлений для Windows Communication Foundation в .NET Framework 3.5 с пакетом обновления 1 для Windows 7 и Windows Server 2008 R2

Необходимость перезагрузки

После установки исправления перезагружать компьютер не требуется..

Сведения о заменяемых исправлениях

Это исправление не заменяет других исправлений..

СВЕДЕНИЯ О ФАЙЛАХ

Английская версия исправления содержит версии файлов, приведенные в следующей таблице (или более поздние).. Дата и время для файлов указаны во всеобщем скоординированном времени (UTC).. При просмотре сведений о файле, время изменяется на местное.. Чтобы узнать разницу между временем по Гринвичу и местным временем,Часовой поясна вкладкеДата и времяэлемент управления панели.
x-разрядных версий Windows Vista с пакетом обновления 2 и Windows Server 2008 с пакетом обновления 2
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файла:Дата:времяПлатформа
Servicemonikersupport.dll3.0.4506.414317,24008-Июл-2009 г.12: 26X86
System.Runtime.Serialization.dll3.0.4506.4143970,75208-Июл-2009 г.12: 26X86
System.ServiceModel.dll3.0.4506.41435,939,20008-Июл-2009 г.12: 26X86

x 64-разрядных версий Windows Vista с пакетом обновления 2 и Windows Server 2008 с пакетом обновления 2
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файла:Дата:времяПлатформа
Servicemonikersupport.dll3.0.4506.414319,28808-Июл-2009 г.12: 26X64
System.Runtime.Serialization.dll3.0.4506.4143847,87208-Июл-2009 г.12: 26X64
System.ServiceModel.dll3.0.4506.41435,275,64808-Июл-2009 г.12: 26X64

Версия пакета обновления 2 для Windows Server 2008 на базе процессоров Itanium
Свернуть эту таблицуРазвернуть эту таблицу
Имя файлаВерсия файлаРазмер файла:Дата:времяПлатформа
Servicemonikersupport.dll3.0.4506.414333,64008-Июл-2009 г.12: 27IA-64
System.Runtime.Serialization.dll3.0.4506.4143847,87208-Июл-2009 г.12: 26IA-64
System.ServiceModel.dll3.0.4506.41435,275,64808-Июл-2009 г.12: 26IA-64

Статус

Корпорация Майкрософт подтверждает, что это проблема в продуктах Майкрософт, перечисленных в разделе «Применяется к»..

Дополнительная информация

Для активации исправления, после его установки, необходимо настроить службу WCF для использования службы следующим образом:
<serviceBehaviors>
   <behavior name="<name>">
     <useRequestHeadersForMetadataAddress>
       <defaultPorts>
          <add scheme="http" port="81" />
          <add scheme="https" port="444" />
        </defaultPorts>
      </useRequestHeadersForMetadataAddress>
   </behavior>
</serviceBehaviors>

Примечание.<name></name>— Это местозаполнитель, который необходимо заменить имя поведения в службе WCF.

Исправление заставляет WCF для создания правильных URI с помощью заголовка HTTP «узел», входящего запроса метаданных. В этом случае заголовок «Узел» содержит адрес балансировки нагрузки вместо адреса внутреннего узла.

Если URI в WSDL-документ имеет другую схему, чем схему «Узел» заголовка URI, например, при поступлении запроса метаданных через HTTPS, но метаданные содержит идентификаторы URI HTTP, исправление для этой схемы требуется номер порта. Номер порта могут быть определены для схемы в <defaultports>разделе.</defaultports>

Свойства

Код статьи: 971842 - Последний отзыв: 1 декабря 2010 г. - Revision: 4.0
Информация в данной статье относится к следующим продуктам.
  • Microsoft .NET Framework 3.0
  • Microsoft .NET Framework 3.0 Service Pack 1
  • Microsoft .NET Framework 3.0 Service Pack 2
Ключевые слова: 
kbexpertiseadvanced kbsurveynew kbqfe kbmt KB971842 KbMtru
Переведено с помощью машинного перевода
ВНИМАНИЕ! Перевод данной статьи был выполнен не человеком, а с помощью программы машинного перевода, разработанной корпорацией Майкрософт. Корпорация Майкрософт предлагает вам статьи, переведенные как людьми, так и средствами машинного перевода, чтобы у вас была возможность ознакомиться со статьями базы знаний KB на родном языке. Однако машинный перевод не всегда идеален. Он может содержать смысловые, синтаксические и грамматические ошибки, подобно тому как иностранец делает ошибки, пытаясь говорить на вашем языке. Корпорация Майкрософт не несет ответственности за неточности, ошибки и возможный ущерб, причиненный в результате неправильного перевода или его использования. Корпорация Майкрософт также часто обновляет средства машинного перевода.
Эта статья на английском языке:971842

Отправить отзыв

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com