【发布时间】:2010-07-23 16:08:53
【问题描述】:
我一直在尝试在我的应用程序中使用动态 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");
在此之后代码完美运行。任何人都能够确认这确实是使用 LINQ to Entity 获得 OrderBy 的正确方法吗?我不敢相信框架会以这种方式实现,也许我忽略了什么?
谢谢,马特
【问题讨论】:
标签: linq entity sql-order-by