WebRequest
एक अमूर्त वर्ग है, जिसमें एक फैक्ट्री विधि Create
है , जिसमें पारित URL के आधार पर, एक ठोस उपवर्ग का एक उदाहरण बनता है। चाहे आप की जरूरत है या
HttpWebRequest httpreq = (HttpWebRequest)WebRequest.Create(strUrl);
इसके बजाय
WebRequest req = WebRequest.Create(strUrl);
अपनी आवश्यकताओं पर निर्भर करता है, और आप किस तरह के URL में पास होते हैं।
यदि आप केवल HTTP: URLs में पास होते हैं, तो पूर्व कोड आपको गुण और विधियों HttpWebRequest
को आधार वर्ग पर परिभाषित लोगों के अलावा उपवर्ग लागू करने की अनुमति देता है WebRequest
। लेकिन अगर आप एक FTP: URL में पास हुए हैं, तो कास्ट करने का प्रयास HttpWebRequest
विफल हो जाएगा।
उत्तरार्द्ध सामान्य है और समर्थित URL के किसी भी प्रकार पर विफल नहीं होगा, लेकिन बिना किसी उपवर्ग के कास्टिंग के बिना आप केवल आधार वर्ग को परिभाषित करने वाले गुणों और विधियों तक पहुंच सकते हैं।
- मार्टिन होनन के माध्यम से