Управление отношениями «многие ко многим» в мастере управления asp.net - PullRequest
1 голос
/ 27 мая 2010

Скажите, у меня есть эта сущность с множеством атрибутов. В форме ввода я решил реализовать элемент управления мастера, чтобы я мог собирать информацию об этом объекте в несколько этапов. Проблема в том, что мне нужно собирать информацию, которая была смоделирована и имеет много-много связей.

Я планирую использовать telerik gridview для управления этим (добавить / редактировать / удалить), проблема в том, где мне хранить эти данные, так как объект в форме вставки еще не создан в базе данных. Хорошо, поэтому я могу хранить всю эту информацию во временных списках, находящихся в состоянии просмотра, ожидая окончательной отправки, где я сохраняю все это в БД, но один из шагов, которые я собираю файлы ... теперь хранение файлов в состоянии просмотра закончилось вопроса, так же, как хранение их в сеансе ...

Я думал о том, чтобы реализовать таким образом, чтобы пользователь сначала представил некоторую информацию (скажем, первые 3 шага), зафиксировал данные в базе данных, создав родительскую сущность, а затем начал вставлять все дочерние сущности ... но это будет странно, поскольку это сбивает с толку, так как на первых шагах вы не сохраняете данные в БД, а на следующих вы делаете коммит напрямую ...

У кого-нибудь есть мысли по этому поводу?

Спасибо

1 Ответ

1 голос
/ 27 мая 2010

Подумайте о создании в своей базе данных таблицы хранения, в которой вы можете хранить данные своих мастеров, а не сохранять их во ViewState. В таблице может быть столбец для SessionID пользователя, чтобы вы могли знать, какие записи принадлежат тем или иным пользователям. После того, как пользователи завершили шаги мастера, вы можете извлечь все данные и зафиксировать их в финальной таблице (таблицах).

Вы также можете создать задание, которое регулярно очищает вашу «промежуточную» таблицу, удаляя записи, которые старше n часов, чтобы вы не накапливали потерянные записи.

...