कहो मेरे पास एक वर्ग है Customer
जिसके पास एक संपत्ति है FirstName
। फिर मैंने ए List<Customer>
।
क्या LINQ का उपयोग यह पता लगाने के लिए किया जा सकता है कि सूची Firstname = 'John'
में एक एकल कथन वाला ग्राहक है .. कैसे?
कहो मेरे पास एक वर्ग है Customer
जिसके पास एक संपत्ति है FirstName
। फिर मैंने ए List<Customer>
।
क्या LINQ का उपयोग यह पता लगाने के लिए किया जा सकता है कि सूची Firstname = 'John'
में एक एकल कथन वाला ग्राहक है .. कैसे?
जवाबों:
LINQ एक विस्तार विधि को परिभाषित करता है जो इस सटीक समस्या को हल करने के लिए एकदम सही है:
using System.Linq;
...
bool has = list.Any(cus => cus.FirstName == "John");
सुनिश्चित करें कि आप System.Core.dll का संदर्भ लें, यही वह जगह है जहाँ LINQ रहता है।
zvolkov का उत्तर यह पता लगाने के लिए एकदम सही है कि क्या ऐसा कोई ग्राहक है। यदि आपको बाद में ग्राहक का उपयोग करने की आवश्यकता है , तो आप कर सकते हैं:
Customer customer = list.FirstOrDefault(cus => cus.FirstName == "John");
if (customer != null)
{
// Use customer
}
मुझे पता है कि यह वह नहीं है जो आप पूछ रहे थे, लेकिन मुझे लगा कि मैं एक फॉलो-ऑन प्रश्न को पहले से छोड़ दूंगा :) (बेशक, यह केवल पहले ऐसे ग्राहक को ढूंढता है ... उन सभी को खोजने के लिए, बस एक का उपयोग करें सामान्य where
खंड।)
प्रश्न पर अनुसरण के लिए एक विकल्प (एक ग्राहक को खोजने के लिए जिनके पास पहले नामों की संख्या हो सकती है):
List<string> names = new List<string>{ "John", "Max", "Pete" };
bool has = customers.Any(cus => names.Contains(cus.FirstName));
या इसी तरह की सूची के सीएसवी से ग्राहक को पुनः प्राप्त करने के लिए
string input = "John,Max,Pete";
List<string> names = input.Split(',').ToList();
customer = customers.FirstOrDefault(cus => names.Contains(cus.FirstName));
customerList.Any(x=>x.Firstname == "John")
List<Customer> list = ...;
Customer john = list.SingleOrDefault(customer => customer.Firstname == "John");
जॉन किसी भी ग्राहक को "जॉन" के पहले नाम के साथ मौजूद होने पर अशक्त होगा।
एक अन्य संभावना
if (list.Count(customer => customer.Firstname == "John") > 0) {
//bla
}
यह कोशिश करो, मुझे आशा है कि यह आपकी मदद करता है।
if (lstCustumers.Any(cus => cus.Firstname == "John"))
{
//TODO CODE
}