OrderBy («это». + Сортировка) - Жесткое кодирование в среде LINQ to Entity?

Я пытался использовать динамическое LINQ to Entity в моем приложении для указания атрибута OrderBy во время выполнения. Однако при использовании кода, как описано в большинстве документов:

var query = context.Customer.OrderBy("Name");

Я получил следующее исключение:

System.Data.EntitySqlException: «Имя» не может быть разрешено в текущей области или контексте. Убедитесь, что все ссылочные переменные находятся в области видимости, что необходимые схемы загружены и что на пространства имен ссылаются правильно.

После долгих поисков я нашел эту страницу MSDN:

http://msdn.microsoft.com/en-us/library/bb358828.aspx

Который включал следующий пример кода:

ObjectQuery<Product> productQuery2 = productQuery1.OrderBy("it.ProductID");

Это побудило меня изменить мой код на следующее:

var query = context.Customer.OrderBy("it.Name");

После этого код работает отлично. Кто-нибудь сможет подтвердить, что это действительно правильный способ заставить OrderBy работать с LINQ to Entity? Я не могу поверить, что структура была бы реализована таким образом, возможно, я что-то упустил из виду?

Спасибо Мэтт

Ответы на вопрос(2)

Ваш ответ на вопрос