Oprava: Identifikátory URI v dokumentu WCF WSDL odkazovat nepřístupné vnitřní instance namísto k vyrovnávání zatížení podle očekávání rozhraní.NET Framework 3.0 v systému Windows Server 2003, Windows XP, Windows Vista a Windows Server 2008

Příznaky

Při použití služby Windows Communication Foundation (WCF) v situacích Vyrovnávání zatížení v Microsoft rozhraní.NET Framework 3.0 v systému Windows Server 2003, Windows XP, Windows Vista a Windows Server 2008 vyskytnout jeden nebo více z následujících problémů:

Problém 1

Jde o takovouto situaci:
  • Nainstalovali jste Microsoft Azure SDK a nástroje Windows Azure pro sadu Microsoft Visual Studio.
  • Vytvořte projekt webové cloudové služby a služby Windows Communication Foundation (WCF) přidat do projektu.
  • Ladění projektu v rozvoji tkaniny.
  • Procházení dokumentu definice jazyka WSDL (Web Service) služby WCF.
V tomto scénáři zjistíte, že identifikátory URI v dokumentu WSDL odkazovat nepřístupné vnitřní webový server instance (http://127.0.0.1:5001/Service.svc?wsdl). Očekáváte však identifikátory URI v dokumentu WSDL odkazuje služba Vyrovnávání zatížení sítě (http://127.0.0.1:81/Service.svc?wsdl). Dále se při pokusu přidat odkaz na službu, zobrazí oznámení o chybě v dialogovém okně Přidat odkaz na službu .

Problém 2

Jde o takovouto situaci:
  • Jste hostitelem služby WCF v instanci za vyrovnávání zatížení.
  • Použijte příkaz "Přidat odkaz na službu" nebo příkazového řádku nástroje svcutil.exe ke stažení ze služby metadat.
V tomto scénáři při pokusu o generovat proxy z metadat, proces se nezdaří, protože metadata obsahuje identifikátory URI instance interní web tento odkaz.

Příčina

Problémy popsané v části "Příznaky" dochází, protože služba Vyrovnávání zatížení sítě pracuje externě. Však instance interní web za vyrovnávání zatížení jsou nepřístupné.

Řešení

Poznámka: Pokud používáte rozhraní.NET Framework 3.5 Service Pack 1 v systému Windows 7 nebo Windows Server 2008 R2, nainstalujte opravu hotfix popsanou v následujícím článku znalostní bázi Microsoft Knowledge:
977420 kumulativní oprava hotfix je k dispozici a opravuje problémy v systému Windows Communication Foundation rozhraní.NET Framework 3.5 SP1 pro systém Windows 7 a Windows Server 2008 R2

Informace o opravě hotfix

Společnost Microsoft má k dispozici podporovanou opravu hotfix. Tato oprava hotfix je však určena pouze problému popsanému v tomto článku. Použití této opravy hotfix pouze u systémů, ve kterých dochází k tomuto konkrétnímu problému. Tato oprava hotfix může být dále testována. Proto pokud nejste vážně ohrožen tímto problémem, doporučujeme počkat na další aktualizaci softwaru, která obsahuje tuto opravu hotfix.

Chcete-li stáhnout tuto opravu hotfix z Galerie kódu MSDN, navštivte následující Web společnosti Microsoft:

Poznámka: Galerie kódu MSDN zobrazí jazyky, pro které je oprava hotfix k dispozici. Pokud není uveden jazyk, je protože zdroj stránky galerie kód není k dispozici pro daný jazyk.

Poznámka: Pokud nastanou další problémy nebo bude nutné další řešení potíží, bude možná třeba vytvořit další samostatný požadavek na služby. Běžná cena za technickou podporu se vztahuje k dodatečným otázkám podpory a k problémům, které se netýkají této konkrétní opravy hotfix. Úplný seznam telefonních čísel služeb zákazníkům společnosti Microsoft a podpoře nebo vytvořit zvláštní požadavek na službu naleznete na následujícím webu společnosti Microsoft:

Předpoklady

Chcete-li nainstalovat tuto opravu hotfix, musíte mít rozhraní.NET Framework 3.5 Service Pack 1 (SP1) nebo v rozhraní.NET Framework 3.0 Service Pack 2 (SP2) nainstalován na jeden z následujících operačních systémů:
  • Systém Windows XP
  • Windows Server 2003
  • Windows Vista s aktualizací SP2
  • Windows Server 2008 SP2

Poznámka: Systém Windows 7 nebo okno Server 2008 R2 verze této opravy hotfix klepněte na následující číslo článku databáze Microsoft Knowledge Base:
981002 Kumulativní oprava hotfix je k dispozici pro Windows Communication Foundation v rozhraní.NET Framework 3.5 SP1 pro systém Windows 7 a Windows Server 2008 R2

Požadavek na restartování

Po instalaci této opravy hotfix nemusíte restartovat počítač.

Informace o nahrazení opravy hotfix

Tato oprava hotfix nenahrazuje žádné další opravy hotfix.

Informace o souborech

Anglická verze této opravy hotfix má atributy (nebo pozdější atributy souborů) uvedené v následující tabulce. Kalendářní data a časy jednotlivých souborů jsou uvedeny v koordinovaném světovém čase (UTC). Při zobrazení informací o souboru je převeden na místní čas. Rozdíl mezi místním časem a časem UTC naleznete na kartě Časové pásmo v položce Datum a čas v okně Ovládací panely.
verze x86 pro Windows XP a Windows Server 2003
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Servicemonikersupport.dll3.0.4506.445617,25608-Dec-200923:03x86
Smdiagnostics.dll3.0.4506.4456110,59208-Dec-200923:03x86
System.identitymodel.dll3.0.4506.4456438,27208-Dec-200923:03x86
System.runtime.serialization.dll3.0.4506.4456970,75208-Dec-200923:03x86
System.servicemodel.dll3.0.4506.44565,984,25608-Dec-200923:03x86
System.servicemodel.washosting.dll3.0.4506.445632 76808-Dec-200923:03x86
verze x64 pro Windows XP a Windows Server 2003
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Servicemonikersupport.dll3.0.4506.445619,30408-Dec-200922:24x64
Smdiagnostics.dll3.0.4506.445694,20808-Dec-200922:24x64
System.identitymodel.dll3.0.4506.4456397,31208-Dec-200922:24x64
System.runtime.serialization.dll3.0.4506.4456847,87208-Dec-200922:24x64
System.servicemodel.dll3.0.4506.44565,324,80008-Dec-200922:24x64
System.servicemodel.washosting.dll3.0.4506.445632 76808-Dec-200922:24x64
verze x86 pro Windows Vista SP2 a Windows Server 2008 SP2
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Servicemonikersupport.dll3.0.4506.414317,24008-Jul-200912:26x86
System.runtime.serialization.dll3.0.4506.4143970,75208-Jul-200912:26x86
System.servicemodel.dll3.0.4506.41435,939,20008-Jul-200912:26x86

x64 verze systému Windows Vista SP2 a Windows Server 2008 SP2
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Servicemonikersupport.dll3.0.4506.414319,28808-Jul-200912:26x64
System.runtime.serialization.dll3.0.4506.4143847,87208-Jul-200912:26x64
System.servicemodel.dll3.0.4506.41435,275,64808-Jul-200912:26x64

Verze s procesorem Itanium systému Windows Server 2008 SP2
Název souboruVerze souboruVelikost souboruDatumČasPlatforma
Servicemonikersupport.dll3.0.4506.414333,64008-Jul-200912:27IA-64
System.runtime.serialization.dll3.0.4506.4143847,87208-Jul-200912:26IA-64
System.servicemodel.dll3.0.4506.41435,275,64808-Jul-200912:26IA-64

Stav

Společnost Microsoft potvrdila, že se jedná o problém v produktech společnosti Microsoft, které jsou uvedeny v části "Platí pro".

Další informace

Chcete-li povolit opravu hotfix po jeho instalaci, je nutné konfigurovat služby WCF používat následující chování služby:
<serviceBehaviors>   <behavior name="<name>">
<useRequestHeadersForMetadataAddress>
<defaultPorts>
<add scheme="http" port="81" />
<add scheme="https" port="444" />
</defaultPorts>
</useRequestHeadersForMetadataAddress>
</behavior>
</serviceBehaviors>

Poznámka: < název > je zástupný symbol, který by měl nahradit název chování v WCF služby.

Tato oprava hotfix způsobí, že WCF generovat správný identifikátor URI pomocí záhlaví "Host" HTTP příchozí požadavek na metadata. V tomto případě záhlaví "Host" obsahuje místo interní uzel adresy služby Vyrovnávání zatížení.

Pokud identifikátor URI v dokumentu WSDL obsahuje jiné schéma než schéma identifikátoru URI záhlaví "Host", například pokud je požadavek na metadata přes protokol HTTPS, ale metadata obsahuje identifikátory URI protokolu HTTP, opravu hotfix potřebovat číslo portu pro jiné schéma. Číslo portu lze určit podle schématu v oddílu < defaultPorts >.
Vlastnosti

ID článku: 971842 - Poslední kontrola: 13. 1. 2017 - Revize: 1

Váš názor