У меня есть список IQueryable. Я пытаюсь разделить этот список на массив соответствия IQueryable для определенного поля (скажем, fieldnum) в первом списке ...
например, если fieldnum == 1, он должен идти в массив [1]. Я использую Where () для фильтрации на основе этого поля, это выглядит примерно так:
var allItems = FillListofMyObjects();
var Filtered = new List<IQueryable<myObject>(MAX+1);
for (var i = 1; i <= MAX; i++)
{
var sublist = allItems.Where(e => e.fieldnum == i);
if (sublist.Count() == 0) continue;
Filtered[i] = sublist;
}
однако я получаю сообщение об ошибке Поле "t1.fieldnum" не является справочным полем в строке if. пошаговое выполнение отладчика показывает, что ошибка на самом деле возникает в строке раньше (метод Where ()), но в любом случае я не знаю, что я делаю неправильно.
Я очень новичок в LINQ, поэтому, если я все делаю неправильно, пожалуйста, дайте мне знать, спасибо!