我有一個這樣的 LINQ 查詢:
var getOnlyMP = from mpPoint in cmList where
mpPoint.Component.Contains("asd") ||
mpPoint.Component.Contains("dsa") ||
mpPoint.Component.Contains("123") ||
mpPoint.Component.Contains("456")
select new MP
{
MPName = mpPoint.Component,
X = mpPoint.PlaceX,
Y = mpPoint.PlaceY,
};
我想將“asd”、“dsa”、“123”、“456”存盤在一個陣列中,那么是否有可能在該陣列上回圈并動態地在 WHERE 子句之后的所有專案中進行比較?
uj5u.com熱心網友回復:
您可以.Any()與陣列一起使用,
var expectedStrings = new string[] {"asd", "dsa", "123", "456"};
var getOnlyMP = cmList.Where(mpPoint=>
expectedStrings.Any(x => mpPoint.Component.Contains(x)))
.Select(x => new MP
{
MPName = x.Component,
X = x.PlaceX,
Y = x.PlaceY,
});
在查詢表單中,
var expectedStrings = new string[] {"asd", "dsa", "123", "456"};
var getOnlyMP = from mpPoint in cmList where
expectedStrings.Any(x => mpPoint.Component.Contains(x)))
select new MP
{
MPName = mpPoint.Component,
X = mpPoint.PlaceX,
Y = mpPoint.PlaceY,
};
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/314651.html
上一篇:我想使用LINQ獲取最頻繁的值
