|
entity framework: self tracking entities - навигация на клиентской стороне
|
|||
---|---|---|---|
#18+
допустим, есть таблица "клиент", есть несколько связанных с ней других таблиц, например, клиент- языки клиента- код языка, клиент- настройки клиента- прочая ерунда, так вот в таблице "клиент" и прочих есть столбцы "изменено пользователем", "изменено тогда-то", когда сохраняется сущность "клиент", то "руками" передаётся имя пользователя и время изменения, таким образом, в самой таблице "клиент" значения для столбцов без проблем изменяются при измении самой сущности, хотелось бы , чтобы при изменении таблицы "клиент" автоматически менялись бы и значения в столбцах "изменено пользователем" / "изменено тогда-то" тех изменённых сущностей, которые с клиентом связаны, например, "языки клиента" или "настройки клиента" могу себе представить, что нужно как-то пройти по графу "клиент" через NavigationProperties и посмотреть, находятся ли связaнные сущности в изменённом состоянии, если да, то изменить значения в столбцах "изменено пользователем" / "изменено тогда-то" и вернуть граф "клиент" для сохранения кто-то с таким сталкивался? есть решения - какие грабли? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.10.2011, 18:21 |
|
entity framework: self tracking entities - навигация на клиентской стороне
|
|||
---|---|---|---|
#18+
Bob Dylanкто-то с таким сталкивался? есть решения - какие грабли? Разумеется. Светлая мысль о логировании изменений в базе рано или поздно приходит в голову любому программисту баз данных ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2011, 11:19 |
|
entity framework: self tracking entities - навигация на клиентской стороне
|
|||
---|---|---|---|
#18+
не было на месте тех, кто код писал- некого было спросить: все в отпусках, а я лишъ неделю назад на это место пришёл- просто то, что увидел, какая-то ерунда: сущность загружается а ля eager loading, потом что-то меняется на клиенте, и чтобы сущность сохранить, из графа удаляется часть связанных сущностей, потом , сооответсвтвенно следует save, похоже на то, что косяки связаны с тем, что используются self tracking entities по поводу "логирования"- это не совсем то, что нужно: речь идёт не о полном аудите изменений, а лишь о "чистом" отслеживании последнего изменения ... |
|||
:
Нравится:
Не нравится:
|
|||
15.10.2011, 19:36 |
|
entity framework: self tracking entities - навигация на клиентской стороне
|
|||
---|---|---|---|
#18+
решение найдено, в основе лежит идея итератора: http://blogs.msdn.com/b/adonet/archive/2010/06/02/working-with-sets-of-self-tracking-entities.aspx там же , внизу страницы, указано небольшое улучшение с точки зрения производительности ( List<T> vs. HashSet<T>) ... |
|||
:
Нравится:
Не нравится:
|
|||
07.11.2011, 18:59 |
|
|
start [/forum/topic.php?fid=17&tid=1350581]: |
0ms |
get settings: |
7ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
56ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
others: | 10ms |
total: | 138ms |
0 / 0 |