6

我在我的 .NET MVC 应用程序中使用动态 Linq 库(这个)来查询 SQL Server 数据库。到目前为止一切正常。

但是,每当我使用方括号来指定包含空格或连字符的麻烦列名时,动态 Linq 库都会给出“预期表达式”错误。这里有些例子:

var query = context.FetchIceCream().AsQueryable().Where("Chocolate = 1"); // This is fine
var query = context.FetchIceCream().AsQueryable().Where("[Rum and Raisin] = 1"); // This results in an "Expression expected" error

我无法重命名任何列名,所以这不是一个选项 - 我需要能够在代码中对其进行排序。我已经到处寻找解决方案,但无济于事......请帮助拯救我的理智!

4

2 回答 2

2

所以我认为这就是答案:
您在 Where 子句中使用的名称必须是您在 Queryable 集合中拥有的对象的属性。

于 2012-08-09T08:40:44.483 回答
0

我建议完全不要使用动态 LINQ。只需将内容添加到IQueryable<T>.

于 2012-08-08T15:44:46.890 回答