【问题标题】:Where Clause operator expected Linq子句运算符期望 Linq 的位置
【发布时间】:2014-04-16 21:04:10
【问题描述】:

大家好,我有一个 linq 查询,如下所示,但我的代码给出了类似 ')' 之类的错误,或者操作员预计我出了什么问题?![这是我的代码][1]

http://i.stack.imgur.com/SsPQf.png

还有我的查询生成器这段代码

string query = "";
foreach (var bud in budget)
{
    if (budget.Count >= 1)
    {
        if (bud == "1")
        {
            if (budget.Count>1)
            {
                query = "(Budget Between 20000 and 34999 "; 
            }
            else
            {
                query = "( Budget Between 20000 and 34999 )";
            }
         }
     }
}

【问题讨论】:

  • 您应该发布您的代码,而不是指向您的代码图像的链接。
  • 您的问题是描述编译时错误,但您发布的图像是在调试器中运行的代码。要让它运行,它必须编译成功。
  • 好吧,我完全添加了我的代码

标签: c# asp.net sql linq


【解决方案1】:

传递给 Where() 方法的参数不能是字符串,它必须是 Func<TSource, Boolean>。您生成查询的方法需要定义为:

Expression<Func<Car, bool>> query = null;

然后,每当您想设置查询的值时,您都可以使用:

query = car => car.Budget >= 20000 && car.Budget <= 34999;

现在您可以在Where() 方法调用中使用query 变量。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-05
    • 1970-01-01
    • 1970-01-01
    • 2015-02-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多