Рекурсивное меню с Ravendb - PullRequest
0 голосов
/ 05 декабря 2011

Кажется, я не могу найти надежного ответа на этот вопрос.Я новичок, когда дело доходит до Равендб, поэтому любая помощь будет высоко ценится.Я ищу, чтобы построить рекурсивное меню.Каков был бы лучший способ сделать это?Я просмотрел этот канал RavenDb - Рекурсивные запросы / индексы для иерархического документа и не смог найти «рекомендуемое» решение.Хранить ли все дочерние документы как денормализованные данные внутри родительского документа?Я думал о сохранении идентификатора документа / страницы и документа / страницы «slug».Это кажется жизнеспособным, так как это вся информация, которая мне понадобится при создании меню, но что произойдет, если заголовок страницы изменится?Затем мне нужно будет изменить слаг страницы, а это значит, что мне придется обновить родительский элемент страницы.Что произойдет, если страница будет удалена?Я просто применяю патч?Чем этот метод отличается от использования Live Projection?Если бы кто-то, возможно, создал приложение с иерархическим деревом с использованием Ravendb, которое имитирует «лучшие практики», я был бы всегда благодарен.

Спасибо

Тайрон

1 Ответ

0 голосов
/ 09 декабря 2011

Как вы реализуете меню? Возможно, вы захотите взглянуть на эту реализацию дерева в качестве ссылки.

Я бы начал с хранения всех данных Меню (вашей древовидной структуры) как одного документа в RavenDB.

Клиент RavenDB очень хорош с точки зрения кэширования, поэтому даже если у вас получится большой документ для навигации, который не должен быть проблемой, так как он всегда будет в памяти.

...