Hald ASMX-proxyinnstillingar utanfor den genererte Reference.cs
Konfigurer ein ASMX-tenesteklient via dei offentlege proxyegenskapane hans, og hald naudsynt tilpassing av førespurnader skild frå regenererte referansefiler.
For ein ASMX-klient basert på HttpWebClientProtocol i .NET Framework, konfigurer den offentlege 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 kjem frå distribusjonen. SOAP-tenesta sine legitimasjonar er skilde. Denne tildelinga treng ikkje gjerast om att inne i kvar genererte operasjon.
Viss endringa gjeld eit underliggjande førespurnadsval eller instrumentering, bruk den overstyrbare GetWebRequest(Uri) til den gamle basisen. Hald ein samsvarande delvis deklarasjon i ei eiga kompilert fil når den genererte klassen er delvis; elles kan ein høveleg avleidd klient gje overstyringa. Kall basisimplementasjonen og hald på normal oppbygging av førespurnaden.
Den plasseringa overlever oppdatering av webreferansen: regenerering kan byte ut manuelle endringar i Reference.cs, medan separat vedlikehaldne utvidingar blir verande reproduserbare.
Endre berre den førespurnadsåtferda som faktisk er naudsynt. Kopiering av ei KeepAlive-løysing kan påverke gjenbruk av tilkoplingar og autentisering som er avhengig av tilkoplingstilstand.
Dette er ASMX/.NET Framework-modellen. WCF og andre SOAP-stakkar har eigne transportgrensesnitt. Vel den støtta klientinnstillinga før du innfører ei tilpassa utviding.