क्या कोई उपज बनाने वाला कोई तरीका है इटेटरेटर अगले आइटम पर जारी रहता है जब एक इटरेटर ब्लॉक में एक अपवाद होता है?कोई उपज बनाने के लिए कोई तरीका है Iterator अपवाद पर अगले आइटम पर जारी रखें?
यह वर्तमान में काम नहीं कर रहा:
Boolean result;
while (true)
{
try
{
result = enumerator.MoveNext(); //Taken from a yield created enumerable
if (!result) break;
}
catch (Exception ex)
{
Console.WriteLine("CATCHED...");
continue;
}
}
इसे यहां देखें नहीं काफी, एक अपवाद प्रगणक द्वारा फेंका "पूरा गणन" में यह डाल देंगे राज्य। –
तो इसे एक कदम आगे बढ़ाने का कोई तरीका नहीं है? होना चाहिये। – aattia
@aattia, MoveNext विधि एक चरण को आगे बढ़ाने का तरीका है। दूसरा कोड अपवाद फेंककर ऐसा होने से रोकता है। एक अपवाद जो अपवाद फेंकता है मूल रूप से टूटा हुआ है क्योंकि यह 99% IENumerable उपयोगों द्वारा उपयोग योग्य नहीं है। एक विधि जोड़ने में बहुत कम मूल्य है जो कहता है "अगर इटेटरेटर पहले ही टूटा हुआ है, तो कृपया वैसे भी कदम उठाएं"। – JaredPar