[英]Check if a value from one array exists in another array using linq
我有一個列表,其中myclass定義了一些屬性
List<MyClass> myClassList = new List<MyClass>();
myClassList.Add(new MyClass() { Id = 1, Name = "My first test", Key = "First" });
myClassList.Add(new MyClass() { Id = 2, Name = "My second test", Key = "Second" });
然后我有一個路徑,即c:\\ my folders \\ company name \\ My First Test,我使用正則表達式將其打入字符串數組,即myArrayPath
我想找到myClassList的任何基於給定屬性的元素,即Name,可以在myArrayPath的任何元素中找到,理想情況下我想返回Key但是如果我返回匹配myArrayPath中的一個元素的對象,這也一樣好。
有沒有辦法使用linq和/或lambda表達式來實現這一點。
謝謝。
使用LINQ可以很容易地做到這一點:
var keyResult = myClassList.Where(x=>myArrayPath.Contains(x.Name))
.Select(x=>x.Key);
如果你需要以數組列表的形式,只需添加.ToList()
或。 ToArray()
在它的最后。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.