Voor een ASMX-client op basis van de HttpWebClientProtocol van .NET Framework configureert u de openbare Proxy vóór de eerste netwerkbewerking:

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

ReportsService is de gegenereerde klasse en proxyAccount komt uit de implementatie. De inloggegevens van de SOAP-service staan apart. Deze toewijzing hoeft niet in elke gegenereerde bewerking te worden herhaald.

Als de wijziging een onderliggende aanvraagoptie of instrumentatie betreft, gebruikt u de overschrijfbare GetWebRequest(Uri) van de oude basis. Houd een overeenkomstige gedeeltelijke declaratie in een afzonderlijk gecompileerd bestand wanneer de gegenereerde klasse gedeeltelijk is; anders kan een geschikte afgeleide client de overschrijving leveren. Roep de basisimplementatie aan en behoud de normale opbouw van de aanvraag.

Die plaatsing overleeft het bijwerken van de webreferentie: hergeneratie kan handmatige wijzigingen in Reference.cs vervangen, terwijl afzonderlijk onderhouden uitbreidingen reproduceerbaar blijven.

Wijzig alleen het aanvraaggedrag dat werkelijk nodig is. Het kopiëren van een KeepAlive-workaround kan het hergebruik van verbindingen en authenticatie die afhangt van de verbindingsstatus beïnvloeden.

Dit is het ASMX/.NET Framework-model. WCF en andere SOAP-stacks hebben hun eigen transportinterfaces. Kies de ondersteunde clientinstelling voordat u een aangepaste uitbreiding introduceert.

Gerelateerde artikelen