Может кто-нибудь описать модель вложенного множества с точки зрения C # / LINQ? - PullRequest
3 голосов
/ 23 марта 2010

Я знаю, что модель вложенного набора не относится непосредственно к языку C # или LINQ ... это то, что я использую для разработки своего веб-приложения.

Для иерархических данных (категорий с подкатегориямив моем случае), я сейчас использую что-то похожее на модель списка смежности.На данный момент у меня есть только 2 уровня категорий, но я бы хотел пойти дальше и учесть n уровней категорий, используя модель вложенного набора.

Я не совсем понимаю, какиспользовать его в контексте C #. Вот статья, которую я читаю о модели вложенного множества .Хотя эта статья прояснила мою путаницу, у меня все еще есть большая ??в моей голове:

- Утомительно ли вставлять, обновлять или удалять категории?Похоже, что для левых и правых чисел потребуется повторная нумерация ... как будут выглядеть запросы LINQ для следующих сценариев?

  • Удалить дочерний узел (изменить нумерацию всех узловзначения влево / вправо)
  • Удалить родительский узел (что вы делаете с сиротами?)
  • Переместить дочерний узел в другой родительский узел (снова перенумеровать)

Если мое понимание правильное, то всегда левые / правые значения дочернего узла всегда будут находиться между левыми / правыми значениями родительского узла, я прав?

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

Любая помощь очень ценится!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...