Это мой код. Упрощено для удобства чтения
var query = from p in people select p;
// here is the point that probably causes the issue
ObjectResult<int> idsThatMatch = getIdsThatMatchFullTextSearch("andre");
query = from p in query where idsThatMatch.Contains(p.id) select p;
var count = query.Count();
query = query.OrderBy(p => p.id);
var pessoas = query.Skip(90).Take(30).ToList();
Мне нужно прочитать счетчик, прежде чем пропустить / взять, чтобы получить общее количество записей перед подкачкой. Граф работает отлично. Но в последней строке моего отрывка это вызывает исключение
Результат запроса не может быть перечислен более одного раза
Почему? Кстати, граф не должен ничего перечислять. И как я могу решить это? Спасибо
EDIT
Люди думали, что я использую хранимые процедуры, но это не так. На самом деле я использую «выбрать в». Код ниже комментария.
РЕДАКТИРОВАТЬ 2
Я только что протестировал приведенный выше код без части "select in", и он отлично работает
РЕДАКТИРОВАТЬ 3
Использование этой строки работает:
ObjectResult<int> idsThatMatch = (getIdsThatMatchFullTextSearch("andre");
query = from p in query where idsThatMatch.Contains(p.id) select p).ToArray();
Спасибо