मेरे पास यह कोड है जो MongoDB nuget संकुल का उपयोग करता है और C# में MongoDb को क्वेरी करता है। _persons IMongoCollection है। क्वेरी काम करती है और यह परिणाम लौटाती है। लेकिन person.NameDetails.Name सरणी में 1-2 सरणी अनुक्रमणिका हो सकती है और कुछ सरणी शून्य हो सकती है। मैं यह जांचने के लिए क्वेरी को कैसे परिशोधित करूं कि क्या यह शून्य है, इसकी तुलना न करें और कीवर्ड के साथ कोई सरणी मेल खाती है, यह अन्य सरणी की जांच किए बिना वापस आ जाएगी। नोट: एक व्यक्ति का प्रथम नाम और उपनाम का अलग-अलग सेट हो सकता है क्योंकि यह अलग-अलग भाषा में भी संग्रहीत होता है।

var documents = _persons.Find(person =>                 
    person.NameDetails.Name[0].NameValue.FirstName == firstName &&
    person.NameDetails.Name[0].NameValue.Surname == surname
).ToList();
0
Steve 2 फरवरी 2021, 17:11

1 उत्तर

सबसे बढ़िया उत्तर
var documents = _persons.Find(person =>                 
    person.NameDetails.Name
        .Any(value => value.NameValue.FirstName == firstName && value.Surname == surname)
).ToList();
1
Ids van der Zee 2 फरवरी 2021, 17:32