Per a un client ASMX basat en HttpWebClientProtocol del .NET Framework, configureu el seu Proxy públic abans de la primera operació de xarxa:

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

ReportsService és la classe generada i proxyAccount prové del desplegament. Les credencials del servei SOAP són separades. Aquesta assignació no cal repetir-la dins de cada operació generada.

Si el canvi afecta una opció subjacent de la sol·licitud o la instrumentació, feu servir el GetWebRequest(Uri) sobreescrivible de la base heretada. Manteniu una declaració parcial corresponent en un fitxer compilat separat quan la classe generada sigui parcial; altrament, un client derivat adequat pot proporcionar la sobreescriptura. Crideu la implementació base i preserveu la construcció normal de la sol·licitud.

Aquesta ubicació sobreviu a l'actualització de la referència web: la regeneració pot substituir les edicions manuals a Reference.cs, mentre que les extensions mantingudes per separat continuen sent reproduïbles.

Canvieu només el comportament de la sol·licitud que realment calgui. Copiar una solució alternativa de KeepAlive pot afectar la reutilització de connexions i l'autenticació que depèn de l'estat de la connexió.

Aquest és el model ASMX/.NET Framework. WCF i altres piles SOAP tenen les seves pròpies interfícies de transport. Trieu la configuració de client admesa abans d'introduir una extensió personalitzada.

Articles relacionats