У меня вопрос дизайна. У меня есть вложенная структура ретранслятора, которая имеет 4 уровня. Повторители отображают данные, которые считаются «Разделами 1-4». Эти разделы привязаны в базе данных к описанию задания.Обработка Глубина встроенных репитеров
Я хочу добавить кнопку редактирования для каждого элемента в самом глубоком ярусе ретрансляторов. Однако глубины репитера не все эквивалентны. Описание задания может содержать несколько записей для каждого раздела (1-4), поэтому требуется повторителей. Уловка, как уже говорилось ранее, заключается в том, что данная запись разделов может быть 1-3 ... затем 1-4 ... может быть, даже в первой части.
Дополнительным предварительным условием, которое делает этот сложный процесс, является то, что он был предназначен только для привязки к одному ярусу за раз. Затем они нажимают кнопку бурения вниз, которая связывает следующий набор данных с внутренним ретранслятором. Таким образом, это затрудняет задачу, чем просто подсчет количества привязок к ней.
Итак, мой вопрос в том, какую конструкцию программирования я мог бы использовать, что было бы относительно быстро, чтобы вывести глубину данной записи? Очевидно, что решение, которое не требовало бы лишнего времени, было бы удивительно, учитывая, что у меня установленный срок.
Вот структура таблицы. Имейте в виду, что это не изменчиво. Это было больше времени.
Table FK PK
Section1 | JobID | Sect1ID |
Section2 | Sect1ID | Sect2ID |
Section3 | Sect2ID | Sect3ID |
Section4 | Sect3ID | Sect4ID |
Repeater Структура
<Repeater 1>
<Section 1 Data>
<Repeater 2>
<Section 2 Data>
<Repeater 3>
<Section 3 Data>
<Repeater 4>
<Section 4 Data>
</Repeater>
</Repeater>
</Repeater>
</Repeater>
Некоторые из моих идей.
Создайте хранимую процедуру, которая вычисляет глубину записи. Перейдите в SectID и верните глубину относительно SectID. У меня уже есть структура для определения каждого отдельного элемента ретранслятора по идентификатору раздела с помощью скрытой метки asp:.
Поддержание словаря для отображения раздела на его глубину. Используйте хранимую процедуру. Однако только запись, когда объект пробурен. Таким образом, он легкий, и я отслеживаю только те элементы, которые вас интересуют.
Каждый раз, когда пользователь выполняет свертывание, выполните проверку, чтобы проверить, равны ли глубины ... если они есть, а затем отобразить редактирование img, если нет, то сверлите и увеличьте значение в словаре.
любые другие идеи или проблемы, которые они предусматривают с моим решением?