Простой C # Linq для Entities Query не работает - PullRequest
0 голосов
/ 05 июля 2011

Я получаю сообщение об ошибке с кодом ниже.Там написано Error "Operator '==' cannot be applied to operands of type 'string' and 'int'. Я смотрел видео, и Джули Лерман делает то же самое.Она не получает ошибку, хотя.Почему?

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 ]

1 голос
/ 05 июля 2011

Вот и все, проверьте тип идентификатора клиента в таблице, если это строка, измените запрос на

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();
        }
1 голос
/ 05 июля 2011

Проверьте тип данных CustomerID.Иначе конвертируйте их в int.

0 голосов
/ 05 июля 2011

Кажется, что CustomerID не относится к типу int. Typecast до int для сравнения с int datatype.

0 голосов
/ 05 июля 2011

попробуйте вместо where c.CustomerID == "5".

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...