IWebProxy policy = WebRequest.GetSystemWebProxy();
request.Proxy = policy;

Conserva o obxecto devolto como IWebProxy. Este fragmento aplícase a código existente baseado en WebRequest, non é unha recomendación de adoptar esa API heredada nunha aplicación nova.

WebProxy implementa a interface, pero non todos os obxectos que implementan a interface herdan de WebProxy. Por iso un contedor do sistema pode rexeitar a conversión antes de que ocorra calquera solicitude de rede. Un nome de clase privado de .NET Framework como WebProxyWrapperOpaque é un detalle de implementación, non un problema do extremo do proxy nin da conta.

Para decidir unha ruta, chama a IsBypassed(destination) e GetProxy(destination) co URI real de destino. Unha omisión pode devolver ese mesmo destino, e unha directiva baseada en PAC pode escoller outra ruta para outro host.

Para a autenticación, IWebProxy xa expón Credentials. Usa a conta e o método admitidos sen converter para chegar á propiedade.

Extraer un único URI para construír un WebProxy de substitución descarta o comportamento por destino da directiva orixinal. Fai isto só cando un extremo fixo sexa a configuración prevista da aplicación, non como solución alternativa a un erro de tipo.

Artigos relacionados