SingleOrDefault не возвращает текущее содержимое базы данных - PullRequest
0 голосов
/ 02 апреля 2012

Сначала мы используем код Entity Framework 4.31 для обработки операций crud с нашей базой данных SQL Server 2008.

1) Я звоню в БД, чтобы получить данные ...

T _return1 = _dbset.Where (o =>! O.F_isdeleted && o.I_id == id) .Single ();

2) я изменяю данные в _return1 ...

3) Затем я вручную обновляю эту же запись в базе данных, используя sql server management studio ...

4) Затем я делаю тот же вызов, который был найден в 1 (во 2-й объект), чтобы извлечь данные, наблюдая, как вызов в профиле сервера sql выполняется для БД.

T _return2 = _dbset.Where (o =>! O.F_isdeleted && o.I_id == id) .Single ();

5) когда я проверяю содержимое return2, я вижу, что оно НЕ содержит обновленных данных из базы данных, хотя я вижу вызов, сделанный в БД в 4.

Я что-то здесь упускаю ??? почему я не вижу текущее содержимое БД в _return2, но вижу идентичный контент для _return1 ???

1 Ответ

0 голосов
/ 03 апреля 2012

Я не уверен, с какой именно проблемой вы столкнулись, но лучший способ устранения неполадок - сначала посмотреть, что генерирует инфраструктура сущностей SQL при вызове вашей базы данных.Вы можете сделать это вручную, использовать LinqPad или установить что-то вроде http://code.google.com/p/mvc-mini-profiler/

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