Nastavenia proxy ASMX nechajte mimo generovaného Reference.cs
Nakonfigurujte klienta služby ASMX pomocou jeho verejných vlastností proxy a potrebné prispôsobenie požiadaviek držte oddelene od regenerovaných referenčných súborov.
Pri klientovi ASMX založenom na HttpWebClientProtocol rozhrania .NET Framework nakonfigurujte jeho verejnú vlastnosť Proxy pred prvou sieťovou operáciou:
var service = new ReportsService();
service.Proxy = new WebProxy("http://proxy.example:8080")
{
Credentials = proxyAccount
};
ReportsService je generovaná trieda a proxyAccount pochádza z nasadenia. Prihlasovacie údaje služby SOAP sú oddelené. Toto priradenie nie je potrebné opakovať v každej generovanej operácii.
Ak sa zmena týka podkladovej voľby požiadavky alebo instrumentácie, použite prepisovateľnú metódu GetWebRequest(Uri) staršej základnej triedy. Ak je generovaná trieda čiastočná, ponechajte zodpovedajúce čiastočné vyhlásenie v samostatne kompilovanom súbore; inak môže prepísanie poskytnúť vhodný odvodený klient. Volajte implementáciu základnej triedy a zachovajte bežné zostavenie požiadavky.
Toto umiestnenie prežije aktualizáciu webového odkazu: regenerácia môže nahradiť ručné úpravy v Reference.cs, zatiaľ čo samostatne udržiavané rozšírenia zostávajú reprodukovateľné.
Meňte len správanie požiadavky, ktoré je naozaj potrebné. Kopírovanie obchádzky KeepAlive môže ovplyvniť opätovné použitie pripojení a overovanie závislé od stavu pripojenia.
Toto je model ASMX/.NET Framework. WCF a ďalšie SOAP zásobníky majú vlastné transportné rozhrania. Pred zavedením vlastného rozšírenia zvoľte podporované nastavenie klienta.