Чтобы использовать многомерный массив с LINQ, вам просто нужно преобразовать его в IEnumerable<T>
.Это достаточно просто, вот два примера вариантов запроса
int[,] array = { { 1, 2 }, { 3, 4 } };
var query = from int item in array
where item % 2 == 0
select item;
var query2 = from item in array.Cast<int>()
where item % 2 == 0
select item;
Каждый синтаксис преобразует двумерный массив в IEnumerable<T>
(потому что вы говорите int item
в одном из предложения from или array.Cast<int>()
в другом).Затем вы можете фильтровать, выбирать или выполнять любую проекцию, какую пожелаете, используя методы LINQ.