linq - How do I convert a recursive object to a Collection in C#? -


मेरे पास रिकर्सिव वस्तु है, वास्तव में एक लिंक्ड सूची है:

  सार्वजनिक वर्ग लिंक्डलिस्ट {सार्वजनिक स्ट्रिंग अनूंककी {प्राप्त करें; सेट; } सार्वजनिक लिंक्डलिस्ट लिंक्डलिस्ट {प्राप्त करें; सेट; }}  

लिंक्डलिस्ट के पास कुछ ऑब्जेक्ट ग्राफ होगा जो अंततः लिंक्डलिस्ट में होगा। लिंक्डलिस्ट == रिक्त।

मैं ग्राफ में सभी ऑब्जेक्ट लेना चाहता हूं उन्हें एक लिंक्डलिस्ट संग्रह में डाल दिया ताकि मैं उन पर पुनरावृति कर सकूं। मैं इसे सी # में कैसे करूँ? मुझे लगता है जैसे उपज या लिनक्यूडू का उपयोग करके इस बारे में जाने का एक आसान तरीका क्या है?

कुछ ऐसा यह काम करना चाहिए यदि आपके पास क्लास पर नियंत्रण है तो आप इसे IEnumerable सीधे कर सकते हैं।

  सार्वजनिक वर्ग लिंक्ड लिस्टअन्यमेय: IEnumerable & lt; स्ट्रिंग & gt; {लिंक्डलिस्ट सूची; सार्वजनिक लिंक्ड लिस्टअन्यमेरेबल (लिंक्डलिस्ट लि) {this.list = l; } सार्वजनिक IEnumerator & lt; स्ट्रिंग & gt; GetEnumerator () {लिंक्डलिस्ट ली = सूची; जबकि (एल! = नल) {उपज रिटर्न एल। UniqueKey; L = l.ext; }}}  

फिर आप प्रत्येक लूप के साथ LinkedListEnumerable पर पुनरावृति कर सकते हैं।


Comments