简单的C#Linq到实体查询不起作用

时间:2011-07-05 10:38:10

标签: c# linq-to-sql

我一直收到以下代码的错误。它说Error "Operator '==' cannot be applied to operands of type 'string' and 'int'.我观看了一段视频而Julie Lerman做了同样的事情。但她没有得到错误。为什么呢?

private static void CustomerQuery()
{
    var context = new NorthwindEntities();
    var query = from c in context.Customers
                where c.CustomerID == 5
                select c;

    var customers = query.FirstOrDefault();
}

4 个答案:

答案 0 :(得分:1)

检查CustomerID的数据类型。否则将它们转换为int。

答案 1 :(得分:1)

就是这样,检查表中客户ID的类型,如果是字符串则将查询更改为

private static void CustomerQuery()

       {
            var context = new NorthwindEntities();
            var query = from c in context.Customers
                        where c.CustomerID == "5"  
                        select c;

            var customers = query.FirstOrDefault();
        }

答案 2 :(得分:0)

尝试使用where c.CustomerID == "5"

答案 3 :(得分:0)

似乎CustomerID不属于int类型。 Typecast int将其与int datatype进行比较。