"HtmlAgilityPack.HtmlDocument" प्रकार की वस्तु को "mshtml.IHTMLDocument2" टाइप करने में असमर्थ
HTMLDocument doc = new HTMLDocument();
IHTMLDocument2 doc2 = (IHTMLDocument2)doc;
उत्तर:
जवाब के लिए 0 № 1प्रकार डालने के लिए A
टाइप करने के लिए B
, निम्नलिखित में से एक सत्य होना चाहिए
- प्रकार
A
प्रकार से विरासत में मिला होना चाहिएB
, या इसे प्रकार लागू करना चाहिएB
अगर यह एक इंटरफ़ेस है। इस मामले में महत्वपूर्ण रूपांतरण काम करेगा - प्रकार
B
प्रकार से विरासत में मिला होना चाहिएA
और चर जिसे आप कास्टिंग कर रहे हैं, उसे एक प्रकार का उदाहरण रखना चाहिएB
. - होना चाहिये स्पष्ट ऑपरेटर दोनों प्रकार में परिभाषित किया गया है जो रूपांतरण करता है
यदि कोई भी सत्य नहीं है, तो आपको "रनटाइम अपवाद मिलेगा। प्रकारों के लिए।" HtmlAgilityPack.HtmlDocument
तथा mshtml.IHTMLDocument2
दोनों ही स्थितियां संतुष्ट नहीं हैं।
अद्यतन करें: लगता है कि आपके पास एक टाइपो है - घोषित करने के बजाय doc
के रूप में चर HTMLDocument
आपने इसे घोषित कर दिया है HtmlDocument
। C # केस-संवेदी भाषा है।
आगे की पढाई: कास्टिंग और प्रकार रूपांतरण (C # प्रोग्रामिंग गाइड)
उत्तर № 2 के लिए -1
इसकी वजह यह है HTMLDocument
लागू नहीं करता है IHTMLDocument2
इसलिए कलाकारों का प्रदर्शन करने का कोई ज्ञात रास्ता नहीं है।