मैं एक विधि है कि एक नई सूची (यह एक बहु विकल्प जवाब से संबंधित है) देता है:LINQ जहां विधि बदल स्रोत संग्रह
public static List<questionAnswer> GetAnswersWithSelections(this Questions_for_Exam__c question)
{
List<questionAnswer> answers = new List<questionAnswer>();
answers.Add(new questionAnswer() { Ordinal = 1, AnswerText = question.AN1__c, Selected = (bool)question.Option1__c });
...
return answers;
}
अगर मैं इस विधि का परिणाम की जांच - मैं सही डेटा को देखते हैं, जैसे लाल = झूठी, ग्रीन = सच, ब्लू = झूठी
मैं तो कहाँ विस्तार विधि LINQ का उपयोग कर लौटे परिणाम फिल्टर करने के लिए प्रयास करें:
List<questionAnswer> CorrectSelections = question.GetAnswersWithSelections();
var tmpA = CorrectSelections.Where(opt => opt.Selected = true);
जब मैं tmpA अमल में लाना, 2 बातें होती हैं:
- SOURCE सूची में डेटा बदलता है - उदा। लाल = यह सच है, ग्रीन = यह सच है, ब्लू = सच
- tmpA में डेटा है कि स्रोत सूची
कोई भी विचार करने के लिए बदल दिया गया है एक ही गलत डेटा पर सेट है?
शर्म में सिर लटकाता है ... मैकडॉनल्ड्स स्टाफ आवेदन फॉर्म भरना शुरू होता है – RobD
एक तरफ, आपका बग्गी कोड स्रोत संग्रह में परिवर्तन नहीं करता है; यह वास्तव में संग्रह में संग्रहीत वस्तुओं को बदल रहा है। यह एक सूक्ष्म लेकिन महत्वपूर्ण अंतर है। – phoog