powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
6 сообщений из 6, страница 1 из 1
Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
    #38636131
stim24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ситуация следующая. Допусти я получаю значение.
Код: c#
1.
2.
3.
4.
5.
6.
7.
                People Table;
                ObjectQuery<People> t = CData.Model.People.Where("It.id=@id", new ObjectParameter("id", id));

                foreach (People i in t)
                {
                    Table = i;
                }


Потом в базе в таблице people что-то меняю например через менеджмент студито sql запросиком
Делаю в программе опять запрос к данным
Код: c#
1.
2.
3.
4.
5.
6.
7.
                People Table;
                ObjectQuery<People> t = CData.Model.People.Where("It.id=@id", new ObjectParameter("id", id));

                foreach (People i in t)
                {
                    Table = i;
                }



А в Table остаться предыдущие значения, конечно если проект перезапустить то данные обновляться.
Как сделать чтобы данные всегда были новые не кэшировались ?
...
Рейтинг: 0 / 0
Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
    #38636385
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. Пересоздать контекст
2. Поиграться с MergeOption
3. ... еще варианты
4. google - наше все... но, может быть, найдутся любители писать много букв и объяснят почему так...
...
Рейтинг: 0 / 0
Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
    #38636493
petalvik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
stim24,

вызвать ObjectContext.Refresh ?
...
Рейтинг: 0 / 0
Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
    #38638790
stim24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
petalvik,

Если делать так
Код: c#
1.
2.
 CData.Model.SaveChanges();
 CData.Model.Refresh(RefreshMode.ClientWins, CData.Model.People);



Срабатывает очень долго... около 1 минуты т.к. данная таблица большая и имеет много связей.


MergeOption не совсем понял где это и как?
...
Рейтинг: 0 / 0
Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
    #38638817
stim24
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Нашел вроде такое пока решение
Код: c#
1.
2.
3.
4.
5.
6.
7.
ObjectQuery<People> t = CData.Model.People.Where("It.id=@id", new ObjectParameter("id", id));

                foreach (People i in t)
                {
                    Table = i;
                }
                CData.Model.Refresh(RefreshMode.ClientWins, Table);


Перед использованием записи делать рефреш ее но всеже как бы вообще отключить кеш?
...
Рейтинг: 0 / 0
Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
    #38638825
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Entity Не обновляет данные которые уже изменились в БД (наверное кэширует)
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]