WebRequest
è una classe astratta, che ha un metodo factory Create
che, in base all'URL inoltrato, crea un'istanza di una sottoclasse concreta. Se avete bisogno o volete HttpWebRequest httpreq = (HttpWebRequest)WebRequest.Create(strUrl);
invece di WebRequest req = WebRequest.Create(strUrl);
dipende dalle vostre esigenze, e da che tipo di URL si passa
Se si passa solo in HTTP:. URL, poi l'ex codice consente di accedere alle proprietà e metodi la sottoclasse HttpWebRequest
implementa in aggiunta a quelli definiti nella classe base WebRequest
. Ma se hai passato un FTP: URL, il tentativo di trasmettere a HttpWebRequest
fallirebbe.
Quest'ultimo è generico e non fallirà su nessuno dei tipi di URL supportati, ma ovviamente senza eseguire il cast di alcuna sottoclasse, è possibile accedere solo alle proprietà e ai metodi definiti dalla classe base.
- via Martin Honnen
fonte
2009-10-08 10:07:24
post-related: http://stackoverflow.com/q/8209781/274502 – cregox