यह संभवतः कुछ के लिए एक मूल प्रश्न है, लेकिन यह मेरे प्रोग्राम के एक टुकड़े को कैसे डिज़ाइन करता है यह प्रभावित करता है।LINQ - क्या कहां अभिव्यक्ति नया उदाहरण या ऑब्जेक्ट इंस्टेंस के संदर्भ में
IEnumerable<A> myCollection;
मैं 2 अलग मापदंड पर मेरे संग्रह छानने हूँ:
मैं ग्रुप ए के एक भी संग्रह है
IEnumerable<A> subCollection1 = myCollection.Where(x => x.Count > 10);
etc.
अब, मुझे पता है कि .Where अभिव्यक्ति एक नया वापस आ जाएगी IENumerable का उदाहरण, लेकिन क्या नए संग्रह में टाइप ए के उदाहरण के समान संदर्भ होता है जो 'myCollection' संदर्भ, या टाइप ए की नई प्रतियां बनाई गई हैं? यदि 'ए' प्रकार के नए उदाहरण बनाए गए हैं, तो क्या यह कहने का एक तरीका है कि 'subCollection1' ए के समान उदाहरणों को 'myCollection' संदर्भों के रूप में संदर्भित करता है?
संपादित करें: आगे स्पष्टीकरण जोड़ने के लिए।
मैं एक ऐसा तरीका ढूंढ रहा हूं ताकि जब मैं 'सब' चयन 'में' ए 'के उदाहरण में परिवर्तन करता हूं, तो इसे' myCollection 'के लिए भी संशोधित किया जाता है।
है यही तो मैं मान लिया था मदद कर सकते हैं लिखें। मैं तो बस यह सुनिश्चित करें कि कहां अभिव्यक्ति उथले नकल के कुछ प्रकार मेरी कक्षा उदाहरणों पर नहीं कर रहा था बनाना चाहते थे। – Brandon
टिप्पण लायक गुमनाम प्रकार हमेशा वर्ग होते हैं, इसलिए संदर्भ भी। – Richard
@ रिचर्ड: अज्ञात ty को ध्यान देने योग्य भी पीएस सी # में अपरिवर्तनीय हैं, इसलिए आप किसी अज्ञात प्रकार के उदाहरण को संशोधित नहीं कर सकते हैं। – LukeH