|
|
|
Кеширование в Entity Framework
|
|||
|---|---|---|---|
|
#18+
Не разберусь в механизме кашеирования EF, есть код var p = context.People; p.Where(c => c.fio_rus == "fio_rus037171").First().fio_rus = "new name"; context.Refresh(System.Data.Objects.RefreshMode.StoreWins, p); Вместо того чтобы загрузить только измененные поля, он начинает считывать все объекты из базы(200000) запросами по 200 человек, и это получается раз в 10 дольше чем заново загрузить всю коллекцию(одним селектом). Так в чем смысл рефреша, и можно ли в EF грузить только обновленные записи? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.05.2010, 16:10 |
|
||
|
Кеширование в Entity Framework
|
|||
|---|---|---|---|
|
#18+
может что то я не понял, ну можно же просто в запросе поставить where var p = from o in context.People where o.fio_rus == "new name" select o; как видно выведит все паля в которых в строчки fio написанно new name ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 08.05.2010, 08:05 |
|
||
|
|

start [/forum/topic.php?fid=17&gotonew=1&tid=1351310]: |
0ms |
get settings: |
7ms |
get forum list: |
21ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
160ms |
get topic data: |
10ms |
get first new msg: |
5ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
| others: | 208ms |
| total: | 452ms |

| 0 / 0 |
