Omezení ladění WCF
Existují tři způsoby, jak začít s laděním služby WCF:
Ladíte proces klienta, který volá službu. Kroky ladicího programu do služby. Služba nemusí být ve stejném řešení jako vaše klientská aplikace.
Ladíte proces klienta, který provádí požadavek na službu. Služba musí být součástí vašeho řešení.
Připojení k procesu slouží k připojení ke službě, která je aktuálně spuštěná. Ladění začíná uvnitř služby.
Toto téma popisuje omezení těchto scénářů.
Omezení při krokování do služby
Pokud chcete přejít ke službě z klientských aplikací, které ladíte, musí být splněny následující podmínky:
Klient musí službu volat pomocí synchronního objektu klienta.
Operace kontraktu nemůže být jednosměrná.
Pokud je server asynchronní, nemůžete při spouštění kódu ve službě zobrazit úplný zásobník volání.
Ladění musí být povolené pomocí následujícího kódu v souboru app.config nebo Web.config:
<system.web> <compilation debug="true" /> </system.web>
Tento kód je potřeba přidat jenom jednou. Tento kód můžete přidat úpravou souboru .config nebo připojením ke službě pomocí funkce Připojit k procesu. Když ve službě použijete připojení ke zpracování , kód ladění se automaticky přidá do souboru .config. Potom můžete ladit a krokovat do služby, aniž byste museli upravovat soubor .config.
Omezení při kroku mimo službu
Krokování ze služby a zpět do klienta má stejná omezení, která jsou popsaná pro krokování do služby. Kromě toho musí být ladicí program připojený k klientovi. Pokud ladíte klienta a krokujete do služby, ladicí program zůstane připojený ke službě. To platí bez ohledu na to, jestli jste spustili klienta spuštěním ladění nebo připojeným k klientovi pomocí připojení k procesu. Pokud jste začali ladění připojením ke službě, ladicí program ještě není připojený k klientovi. V takovém případě, pokud potřebujete přejít ze služby a zpět do klienta, musíte nejprve použít připojení k procesu a připojit se k klientovi ručně.
Omezení automatického připojení ke službě
Automatické připojení ke službě má následující omezení:
Služba musí být součástí řešení sady Visual Studio, které ladíte.
Služba musí být hostovaná. Může být součástí projektu webu (systém souborů a HTTP), projektu webové aplikace (systém souborů a HTTP) nebo projektu knihovny služeb WCF. Projekty knihovny služeb WCF mohou být knihovny služeb nebo knihovny služeb pracovního postupu.
Služba musí být vyvolána z klienta WCF.
Ladění musí být povolené pomocí následujícího kódu v souboru app.config nebo Web.config:
<system.web> <compilation debug="true" /> <system.web>
Samoobslužné hostování
Služba v místním prostředí je služba WCF, která neběží uvnitř služby IIS, hostitele služby WCF nebo vývojového serveru ASP.NET. Informace o tom, jak ladit službu v místním prostředí, naleznete v tématu Postupy: Ladění služby WCF v místním prostředí.
Pokud se zobrazí chybová zpráva Nejde automaticky přejít na server, opravte instalaci sady Visual Studio a pokuste se problém vyřešit. K tomu může dojít v případě, že před instalací ASP.NET nainstalujete Sadu Visual Studio.