La partie la plus délicate est ici que si le constructeur WebException(String, Exception, WebExceptionStatus, WebResponse) est librement disponible, le HttpWebResponse
est indiqué pour être créé seulement par HttpWebRequest
(il y a des constructeurs, mais ils sont obsolètes).
Donc, puisque WebException
accepte le résumé WebResponse
plutôt que HttpWebResponse
, je suggère de créer une classe MockHttpWebResponse
ou quelque chose. Je ne sais pas exactement quelles sont les variables dont vous avez besoin. Par conséquent, je vais vous lier à HttpWebResponse source pour que vous puissiez récupérer les variables essentielles.
Ensuite, vous utilisez cette classe dans le constructeur comme ici:
new WebException(message, null, WebExceptionStatus.ProtocolError, new MockHttpWebResponse(statusCode))
... ou quelque chose de similaire. Je pense que vous savez mieux ce qui est nécessaire pour votre scénario. ;)