For en ASMX-klient basert på .NET Frameworks HttpWebClientProtocol, konfigurer den offentlige Proxy før den første nettverksoperasjonen:

var service = new ReportsService();
service.Proxy = new WebProxy("http://proxy.example:8080")
{
    Credentials = proxyAccount
};

ReportsService er den genererte klassen, og proxyAccount kommer fra distribusjonen. SOAP-tjenestens legitimasjon er atskilt. Denne tilordningen trenger ikke gjentas inne i hver genererte operasjon.

Hvis endringen gjelder et underliggende forespørselsalternativ eller instrumentering, bruk den eldre basens overstyrbare GetWebRequest(Uri). Hold en samsvarende delvis deklarasjon i en egen kompilert fil når den genererte klassen er delvis; ellers kan en passende avledet klient levere overstyringen. Kall basisimplementeringen og bevar normal oppbygging av forespørselen.

Den plasseringen overlever oppdatering av webreferansen: regenerering kan erstatte manuelle endringer i Reference.cs, mens separat vedlikeholdte utvidelser forblir reproduserbare.

Endre bare den forespørselsatferden som faktisk er nødvendig. Kopiering av en KeepAlive-løsning kan påvirke gjenbruk av tilkoblinger og autentisering som avhenger av tilkoblingstilstand.

Dette er ASMX/.NET Framework-modellen. WCF og andre SOAP-stakker har egne transportgrensesnitt. Velg den støttede klientinnstillingen før du innfører en tilpasset utvidelse.

Relaterte artikler