Entity Framework и сортировка - PullRequest
       10

Entity Framework и сортировка

0 голосов
/ 22 октября 2009

Я пытаюсь отсортировать список объектов, используя GridView в ASP.NET, но я не могу заставить его работать в следующих примерах. У меня есть свойство с именем Name в моей сущности, и я пытаюсь отсортировать по указанному столбцу, если он указан, или столбцу Name, если sortExpression пусто.

public static List<Product> GetProducts(int startRowIndex, int maximumRows, string sortExpression) {
    using(var context = new ShopEntities()) {
        var products = context.Products;
        products.OrderBy("it."+(string.IsNullOrEmpty(sortExpression) ? "Name" : sortExpression))
                                       .Skip(startRowIndex)
                                       .Take(maximumRows);
        return products.ToList();
    }
}

Хотя я не могу его отсортировать. Похоже, что единственным вариантом является переключение имени свойства для каждого свойства в сущности и использование лямбды.

1 Ответ

2 голосов
/ 22 октября 2009

OrderBy не изменяет выражение. Он возвращает выражение new , которое ваш код игнорирует. Измените свой код на:

products = products.OrderBy("it."+ //...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...