Запрос Entity Framework возвращает одну и ту же строку несколько раз - PullRequest
10 голосов
/ 31 августа 2011

Это мой первый раз, когда я использую Entity Framework, и я получаю некоторые запутанные результаты. Я знаю, что конкретная таблица содержит 3 отдельных строки, когда я запускаю этот SQL-запрос:

SELECT * FROM mytable WHERE service_month = 201012

Однако, когда я запускаю этот запрос к платформе, я получаю 3 строки, но все они являются копиями первой строки (синтаксис VB).

Dim temp = _context.mytable.Where(Function(x) x.service_month = 201012)

Я что-то настроил неправильно? Вот как я это делаю с LINQ to SQL, поэтому я чувствую, что что-то упустил.

1 Ответ

22 голосов
/ 31 августа 2011

Исправьте определение первичного ключа в вашем EDMX. (Если в вашей таблице нет PK, добавьте его.) Когда все строки возвращают один и тот же «ключ», EF возвращает один и тот же экземпляр объекта.

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