Manteña a configuración de proxy de ASMX fóra do Reference.cs xerado
Configure un cliente de servizo ASMX a través das súas propiedades públicas de proxy e manteña a personalización necesaria das solicitudes separada dos ficheiros de referencia rexerados.
Para un cliente ASMX baseado en HttpWebClientProtocol de .NET Framework, configure o seu Proxy público antes da primeira operación de rede:
var service = new ReportsService();
service.Proxy = new WebProxy("http://proxy.example:8080")
{
Credentials = proxyAccount
};
ReportsService é a clase xerada e proxyAccount procede do despregamento. As credenciais do servizo SOAP son independentes. Esta asignación non precisa repetirse dentro de cada operación xerada.
Se o cambio afecta unha opción subxacente da solicitude ou a instrumentación, use o GetWebRequest(Uri) sobrescribible da base heredada. Manteña unha declaración parcial coincidente nun ficheiro compilado aparte cando a clase xerada sexa parcial; se non, un cliente derivado axeitado pode fornecer a sobrescritura. Chame a implementación base e conserve a construción normal da solicitude.
Ese emprazamento sobrevive á actualización da referencia web: a rexeración pode substituír as edicións manuais en Reference.cs, mentres que as extensións mantidas por separado seguen sendo reproducibles.
Cambie só o comportamento da solicitude que realmente se necesite. Copiar unha solución alternativa de KeepAlive pode afectar a reutilización de conexións e a autenticación que depende do estado da conexión.
Este é o modelo ASMX/.NET Framework. WCF e outras pilas SOAP teñen as súas propias interfaces de transporte. Escolla a configuración de cliente admitida antes de introducir unha extensión personalizada.