c# - How to make a generic list equal another generic list -
यह मेरा सेट अप है,
वर्ग की लागत की अवधि: आईपीएरियोडक्ल्यूलेशन {सार्वजनिक दशमलव} एक {प्राप्त; सेट; } सार्वजनिक दशमलव? बी {प्राप्त; सेट; } सार्वजनिक दशमलव? सी {प्राप्त; सेट; } सार्वजनिक दशमलव? डी {प्राप्त करें; सेट; }} इंटरफेस आईपीएरियोडक्ल्यूलेशन {दशमलव} एक {प्राप्त; सेट; } दशमलव? बी {प्राप्त; सेट; }} वर्ग myDto {सार्वजनिक सूची & lt; CostPeriodDto & gt; CostPeriodList {प्राप्त करें; सेट; } सार्वजनिक सूची & lt; IPeriodCalculation & gt; अवधिसील्लिक सूची {प्राप्त करें this.costPeriodList; // compile error}}}
ऐसा करने का सबसे अच्छा तरीका क्या होगा?
कास्ट & lt; IPeriodCalculation & gt; () :
<प्री> सार्वजनिक वर्ग का उपयोग करें CostPeriodDo: IPeriodCalculation {सार्वजनिक दशमलव} एक {प्राप्त; सेट; } सार्वजनिक दशमलव? बी {प्राप्त; सेट; } सार्वजनिक दशमलव? सी {प्राप्त; सेट; } सार्वजनिक दशमलव? डी {प्राप्त करें; सेट; }} सार्वजनिक इंटरफ़ेस IPeriodCalculation {दशमलव? एक {प्राप्त; सेट; } दशमलव? बी {प्राप्त; सेट; }} सार्वजनिक वर्ग myDto {सार्वजनिक सूची & lt; CostPeriodDto & gt; CostPeriodList {प्राप्त करें; सेट; } सार्वजनिक सूची & lt; IPeriodCalculation & gt; अवधिसीएलएललिस्ट ({return this.costPeriodList.Cast & lt; IPeriodCalculation & gt; ()। ToList (); यदि आप कुछ को कार्यान्वयन IEnumerable & lt; out T & gt;
का उपयोग कर रहे हैं, तो आप सी # 4 में विश्वास करते हैं, आप इसे लिखते ही तरीके से कर सकते हैं , और इसका उपयोग करके इसका समाधान किया जाएगा। वर्ग myDto {सार्वजनिक IEnumerable & lt; CostPeriodDto & gt; CostPeriodList {प्राप्त करें; सेट; } सार्वजनिक IEnumerable & lt; IPeriodCalculation & gt; अवधिसील्लिक सूची {प्राप्त करें this.costPeriodList; // एक संकलन त्रुटि नहीं दे}}}
Comments
Post a Comment