Я создаю веб-сайт, где все страницы свисают с управляемой базой данных иерархии деревьев.
Все, кроме одного узла, имеют родительский узел. Узлы могут иметь разрешения на чтение на основе ролей. Некоторые узлы могут иметь специальные правила (такие как: не отображать в меню навигации).
Узлы могут представлять ссылки на другие узлы (например, ярлык в Windows). Узлы обычно представляют страницы.
На страницах представлено либо содержимое HTML, либо выполнение программирования . Некоторые страницы могут быть корнями поддеревьев (альтернативные мастер-страницы и таблицы стилей).
Пожалуйста, помогите мне настроить базу данных узлов в Microsoft SQL Server для использования с Linq to SQL.
У меня есть три идеи:
Множество легких столов с почти
ноль нулевых полей.
Таблица тяжеловесных узлов с множеством
нулевые поля.
Лучший (или худший) из обоих: много
nullalbe внешние ключи для многих
легкие столы.
Что, по вашему мнению, лучше всего представляет данные? Что будет проще всего использовать с Linq to SQL?
Как мне сохранить правила целостности данных в базе данных? Как мне лучше всего применять их в моем программировании?
Узлы должны быть либо (но не оба)
ссылки или страницы.
Страницы должны быть html или кодом (но не оба).
Ссылки не могут быть ни корнями, ни HTML, ни кодом.
Могу ли я сделать ASP.NET Site Map Provider с такой структурой? Должен ли я?
Обновление: я задал более общий вопрос:
Как лучше всего обрабатывать отношения один-к-одному в SQL?
Похожие вопросы:
Как применить правила целостности данных в моей базе данных?