|
|
|
Долгое сохранение через dbContext
|
|||
|---|---|---|---|
|
#18+
Здравствуйте. Проект не веб. WinForms. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2015, 07:25 |
|
||
|
Долгое сохранение через dbContext
|
|||
|---|---|---|---|
|
#18+
Быстро опубликовалось, изменить не могу. Суть вот в чём. Есть форма, на неё грузится куча данных, таблица на основе bindingList'a объектов. Далее одну строчку нужно изменить, сохранить изменения в БД. Сохранение длится где-то 6 секунд. Смотрю сontext.ChangeTracker.Entries().Count(), 11000 объектов. Создаю в сохранении новый контекст, беру айдишник выбранной строки-объекта, вытаскиваю из базы этот объект, присваиваю ему все значения из таблицы (в том числе и обновлённые), сохраняю - в сontext.ChangeTracker.Entries().Count() - 9 объектов, сохранение длится 500 миллисекунд, что вполне приемлемо. Выход вроде бы найден, но какой-то он кривой, ИМХО. Зачем в ChangeTracker записываются все эти 11000 объектов, которые не будут меняться? Почему я не могу один единственный объект в этот Change Tracker запихать, чтобы при сохранении только его изменения и рассматривались? Или как-то можно? Не было ли у кого-нибудь таких проблем и как их обходили? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 28.01.2015, 07:33 |
|
||
|
|

start [/forum/topic.php?fid=17&fpage=16&tid=1349637]: |
0ms |
get settings: |
10ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
78ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
| others: | 258ms |
| total: | 422ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...