मुझे मूल्य निर्दिष्ट करके कुंजी प्राप्त करने में समस्या हो रही है। मैं इसे कैसे प्राप्त कर सकता हूं सबसे अच्छा तरीका क्या है?मूल्य से कुंजी प्राप्त करें - शब्दकोश <स्ट्रिंग, सूची <string>>
var st1= new List<string> { "NY", "CT", "ME" };
var st2= new List<string> { "KY", "TN", "SC" };
var st3= new List<string> { "TX", "OK", "MO" };
var statesToEmailDictionary = new Dictionary<string, List<string>>();
statesToEmailDictionary.Add("[email protected]", st1);
statesToEmailDictionary.Add("[email protected]", st2);
statesToEmailDictionary.Add("[email protected]", st3);
var emailAdd = statesToEmailDictionary.FirstOrDefault(x => x.Value.Where(y => y.Contains(state))).Key;
अनपेक्षित व्यवहार के रूप में 'FirstOrDefault (...)। Key', खतरनाक नहीं है जब" OrDefault "यहाँ होता हैं ? –
@ChrisMarisic 'OrDefault' केस उस प्रकार का डिफ़ॉल्ट मान देता है जिस पर आप पुन: प्रयास कर रहे हैं। संदर्भ प्रकारों के लिए, यह 'शून्य' है, लेकिन मूल्य प्रकारों के लिए, यह उस प्रकार का एक नया उदाहरण होगा। चूंकि 'KeyValuePair 'एक मान प्रकार है (यानी' संरचना '),' OrDefault 'केस नतीजे का संदर्भ नहीं देगा। चूंकि 'टीकेई' यहां 'स्ट्रिंग' है, इसलिए उस नए इंस्टेंस का '.K'' शून्य 'होगा। –