का उपयोग कर मैं नीचे LINQ में Single
उपयोग नहीं कर रहा बिना LINQ में कोई तत्व अपवाद होता है, लेकिन मैं अभी भी हो रही है एक अपवाद 'अनुक्रम कोई तत्व शामिल हैं':अनुक्रम भी एकल
allNames = StockCollection.Where((s) => s.Name.IndexOf("A") == 0)
.Select((s) => s.Name)
.Aggregate((namesInfo, name) => namesInfo += ", " + name);
यह अपवाद आता है जब 'A'
नाम से शुरू होने वाला कोई स्टॉक नहीं।
ऐसा लगता है कि एक विस्तार विधि कम से कम एक तत्व को संतुष्ट करने की अपेक्षा कर रही है लेकिन इसकी उम्मीद नहीं है।
क्या आप इसे हल करने के लिए सबसे अच्छा समाधान सुझा सकते हैं?
अग्रिम धन्यवाद।
धन्यवाद उत्तर के लिए एक बहुत मैं अब यह कोशिश करने जा रहा हूँ .. लेकिन फिर भी मैं जानना चाहता है कि कुल एक अपवाद फेंक रहा है चाहता हूँ। –
@ डी जे: क्यों? यह समझदार मूल्य क्या वापस आ सकता है? शायद रिटर्न प्रकार का डिफ़ॉल्ट मान (इस मामले में 'शून्य'), लेकिन मुझे वह नहीं चाहिए। – Ani
समस्या यह है कि हम रनटाइम पर नहीं जानते कि हमारे संग्रह में कोई ऑब्जेक्ट होगा या नहीं? इसलिए इसे अपवाद नहीं फेंकना चाहिए या यह सिर्फ डिफ़ॉल्ट मान वापस कर सकता है। 'DefaultIfEmpty' के लिए –