नहीं मारा है मुझे कुछ अजीब लगता है (मुझे लगता है!)। यदि मैं हाँ() विधि में ब्रेकपॉइंट डालने का प्रयास करता हूं, तो यह फ़ंक्शन निष्पादित होने पर प्रोग्राम को कभी भी रोक नहीं देगा। अगर मैं कोड की किसी भी अन्य पंक्ति में ऐसा करने की कोशिश करता हूं, तो यह अपेक्षा के अनुसार काम करेगा। क्या यह एक बग है, या ऐसा कुछ है जो मुझसे बच रहा है?डीबगर ब्रेकपॉइंट
फ़िल्टर 2 ऑब्जेक्ट्स लौटाएगा, सब कुछ डीबगर को छोड़कर अपेक्षित काम करता प्रतीत होता है।
private void Form1_Load(object sender, EventArgs e) {
List<LOL> list = new List<LOL>();
list.Add(new LOL());
list.Add(new LOL());
IEnumerable<LOL> filter = list.Where(
delegate(LOL lol) {
return lol.yes();
}
);
string l = ""; <------this is hit by the debugger
}
class LOL {
public bool yes() {
bool ret = true; <---------this is NOT hit by the debugger
return ret;
}
}
याद रखें, एक क्वेरी विधि का परिणाम जैसे _an ऑब्जेक्ट कहां है query_ का प्रतिनिधित्व करता है। यह क्वेरी का _results_ नहीं है। यह सवाल _itself_ है। यह तब तक नहीं है जब तक आप "हे प्रश्न पूछें, आपके नतीजे क्या हैं?" कि क्वेरी वास्तव में निष्पादित करता है। –
अब आप इस छोटी पहेली का जवाब दे सकते हैं: समस्या: http://blogs.msdn.com/ericlippert/archive/2007/09/05/psychic-debugging-part-one.aspx समाधान: http: //blogs.msdn। com/ericlippert/संग्रह/2007/09/06/मानसिक-डिबगिंग-पार्ट-two.aspx –