Рассматриваемая функция:
public static List<Order> GetOrdersByPage(int pageNum, byte pageSize, OrderContext orderContext)
{
const int PageOffset = 1;
return orderContext.Orders
.OrderBy(c => c.OrderID)
.Skip(pageSize * (pageNum - PageOffset))
.Take(pageSize)
.ToList();
/*
return
(
from o in orderContext.Orders
orderby o.OrderID descending
select o
).Skip(pageSize * (pageNum - PageOffset))
.Take(pageSize)
.ToList();
*/
}
ПРИМЕЧАНИЕ. Закомментированный код выполняет (по крайней мере, предполагается) то же самое, что и незакомментированный код, и, таким образом, ошибка по-прежнему возникает.
Кроме того, такая же ошибка возникает при попытке просто загрузить все данные:
public static List<Order> GetAllOrders(OrderContext orderContext)
{
return
(
from o in orderContext.Orders
orderby o.OrderID descending
select o
).ToList();
}
Журнал ошибок и репозиторий GitHub .
ДРУГОЕ ПРИМЕЧАНИЕ: Я хотел бы уточнить, что функция добавления объектов в базу данных по-прежнему работает. Вот код для этого:
public static async Task<Order> Add(Order o, OrderContext orderContext)
{
return await OrderAction(o, orderContext, EntityState.Added);
}
private static async Task<Order> OrderAction( Order o, OrderContext orderContext, EntityState state)
{
orderContext.Orders.Add(o);
orderContext.Entry(o).State = state;
await orderContext.SaveChangesAsync();
return o;
}
Я сделал GetOrdersByPage () не асинхронным из-за того, что думал, что это могло быть частью проблемы. Я добавлю его обратно, как только узнаю, что на самом деле пошло не так.