के अंदर मैन्युअल रूप से एक गणनाकर्ता को बढ़ाएं मेरे पास एक फोरैच लूप के अंदर लूप है जबकि मैं निश्चित स्थिति को पूरा करते समय अनिश्चितता से आगे बढ़ाना चाहता हूं। ऐसा करने के लिए मैं एन्यूमेरेटर < टी> (जो कि यह फ़ोरैच लूप में होना चाहिए) के लिए गणनाकर्ता को कास्ट करने का प्रयास करें, फिर जाली ऑब्जेक्ट पर MoveNext() को कॉल करना, लेकिन यह मुझे एक त्रुटि देता है कि मैं इसे परिवर्तित नहीं कर सकता।फोरैच लूप
सिस्टम 'डेटा.डेटाइम' को सिस्टम में परिवर्तित नहीं कर सकता। चयन। जेनरिक.इंटर्यूमेरेटर संदर्भ संदर्भ, मुक्केबाजी रूपांतरण, अनबॉक्सिंग रूपांतरण, रैपिंग रूपांतरण, या शून्य प्रकार रूपांतरण के माध्यम से।
foreach (DateTime time in times)
{
while (condition)
{
// perform action
// move to next item
(time as IEnumerator<DateTime>).MoveNext(); // will not let me do this
}
// code to execute after while condition is met
}
सबसे अच्छा तरीका मैन्युअल foreach लूप के अंदर IEnumerator बढ़ाने के लिए क्या है?
संपादित करें: दिखाए जाने के लिए संपादित किया गया है कि लूप के बाद कोड है जिसे मैं शर्त मिलने के बाद निष्पादित करना चाहता हूं, यही कारण है कि मैं समय के अंदर मैन्युअल रूप से वृद्धि करना चाहता था, फिर जारी रखने के विरोध में इसे तोड़ना चाहता था मुझे शीर्ष पर वापस। यदि यह संभव नहीं है तो मेरा मानना है कि सबसे अच्छी बात यह है कि मैं इसे कैसे कर रहा हूं फिर से डिजाइन करना है।
जवाब के अलावा, एक बात आप याद आ रही हो सकता है: 'time' एक' DateTime' है, जो लागू नहीं करता है 'IEnumerator' –
कैसे foreach पाश अग्रिम यह अगर इसे लागू नहीं करता है सकते हैं आईएन्यूमेरेटर इंटरफ़ेस? – Despertar
अपना कोड देखें। 'foreach (समय में दिनांक समय)'। ऑब्जेक्ट की गणना की जा रही है। –