Poradce při potížích odkazů na služby
Toto téma obsahuje seznam běžných problémů, které mohou nastat při práci s Windows Communication Foundation (WCF) nebo odkazů WCF Data Services v sadě Visual Studio.
Chybné vrácení dat ze služby
Když vrátíte DataSet nebo DataTable ze služby, můžete obdržet výjimku "Maximální velikost kvóty pro příchozí zprávy byla překročena".Ve výchozím nastavení je vlastnost MaxReceivedMessageSize pro některé vazby nastavena na hodnotu relativně malou k omezení rizika útoku na dostupnost služby (DOS).Můžete zvýšit tuto hodnotu k zabránění výjimky.Další informace naleznete v tématu MaxReceivedMessageSize.
Odstranění této chyby:
V Průzkumníku řešení dvakrát klikněte na konfigurační soubor app.config k jeho otevření.
Najděte vlastnost MaxReceivedMessageSize a změňte ji na větší hodnotu.
Nelze najít službu v mém řešení
Po kliknutí na tlačítko Zjišťování v dialogovém okně Přidat odkazy na služby se nezobrazí v seznamu služeb s jedním nebo více projektů v řešení knihovny služby WCF.Tato situace může nastat, pokud knihovna služby byla přidána do řešení, ale nebyla dosud zkompilována.
Odstranění této chyby:
- V Průzkumníku řešení klikněte pravým tlačítkem myši na projekt knihovny služby WCF a klikněte na Sestavení.
Chyba přístupu ke službě prostřednictvím vzdálené plochy
Když uživatel přistupuje k webově hostované službě WCF prostřednictvím připojení ke vzdálené ploše a uživatel nemá oprávnění správce, bude použito ověřování NTLM.Pokud uživatel nemá oprávnění pro správu, uživatel může zobrazit následující chybová zpráva: "požadavek HTTP Neoprávněný se schématem ověření klienta"Anonymní".Ověřovací hlavička, kterou obdržel od serveru byla "protokol NTLM"."
Odstranění této chyby:
V projektu webové stránky otevřete stránky Vlastnosti.
Na kartě Možnosti spuštění zrušte zaškrtnutí zaškrtávacího políčka Ověřování NTLM.
[!POZNÁMKA]
Měli byste vypnout ověřování NTLM pouze pro webové servery, které obsahují výhradně služby WCF.Zabezpečení pro služby WCF je spravováno prostřednictvím konfigurace v souboru web.config.Díky tomu je ověřování NTLM zbytečné.
Další informace naleznete v tématu Poradce při potížích s výjimkami: System.ServiceModel.Security.MessageSecurityException.
Úroveň přístupu pro generované třídy nastavení je bez efektu
Nastavení možnosti Úroveň přístupu pro vygenerované třídy v dialogovém okně Nastavit odkazy na služby na Interní nebo Přátelský nemusí vždy fungovat.Přestože se možnost objeví jako nastavená v dialogovém okně, výsledné podpůrné třídy budou vygenerovány s úrovní přístupu Public.
Jedná se o známé omezení určitých typů, jako například těch serializovaných pomocí XmlSerializer.
Chyba při ladění kódu služby
Při kroku do kódu služby WCF z kódu klienta můžete obdržet chybu týkající se chybějících symbolů.K této situaci může dojít v případě, že služba, která byla součástí vašeho řešení, byla přesunuta nebo odebrána z řešení.
Pokud nejprve přidáte odkaz na službu WCF, která je součástí aktuálního řešení, explicitní závislost sestavení je přidána mezi projekt služby a projekt klienta služby.To zaručuje, že klient vždy přistupuje k aktuálním binárním souborům služby, což je zvláště důležité u scénářů ladění, jako je například krokování z klientského kódu do kódu služby.
Pokud je projekt služby odebrán z řešení, tato explicitní závislost sestavení je neplatná.Sada Visual Studio již nemůže zaručit, že projekt služby bude znovu sestaven podle potřeby.
Chcete-li tuto chybu opravit, budete muset ručně znovu vytvořit projekt služby:
V nabídce Nástroje klikněte na příkaz Možnosti.
V dialogovém okně Možnosti rozbalte Projekty a řešení a vyberte Obecné.
Ujistěte se, že zaškrtávací políčko Zobrazit pokročilou konfiguraci sestavení je zaškrtnuto a potom klikněte na tlačítko OK.
Načtení projektu služby WCF.Další informace naleznete v tématu Jak: vytvoření řešení Multi-Project.
V dialogovém okně Správce konfigurací nastavte Konfigurace aktivního řešení na Ladit.Další informace naleznete v tématu Jak: vytvořit a upravit konfiguraci.
V Průzkumníku řešení vyberte projekt služby WCF.
Na nabídce Sestavení klikněte na tlačítko Opětovné sestavení z opětovnému sestavení projektu služby WCF.
Datové služby WCF se nezobrazí v prohlížeči
Když se pokusí zobrazit XML reprezentaci dat v WCF Data Service, Internet Explorer může data nesprávně interpretovat jako informační kanál RSS.Musíte si být jisti, že je zakázána možnost zobrazit informační kanály RSS.
Chcete-li tuto chybu opravit, zakažte informační kanály RSS:
V aplikaci Internet Explorer klikněte v nabídce Nástroje na položku Možnosti Internetu.
Na kartě Obsah v sekci Kanály klikněte na Nastavení.
V dialogovém okně Nastavení informačního kanálu zrušte zaškrtnutí zaškrtávacího políčka Zapnutí zobrazení pro čtení informačního kanálu a potom klikněte na tlačítko OK.
Klikněte na tlačítko OK k zavření dialogového okna Možnosti Internetu.
Viz také
Koncepty
Služby Windows Communication Foundation a datové služby WCF v sadě Visual Studio