3

ネストされたセット モデルが C# 言語や LINQ に直接関係していないことはわかっています。これは、Web アプリの開発に使用しているものです。

階層データ (私の場合はサブカテゴリを含むカテゴリ) については、現在、隣接リスト モデルに似たものを使用しています。現時点では、2 レベルのカテゴリしかありませんが、さらに進めて、ネストされたセット モデルを使用して n レベルのカテゴリを許可したいと考えています。

C# コンテキストでの使用方法についてはよくわかりません。これは、ネストされたセットモデルで読んでいる記事ですこの記事で私の混乱はいくらか解消されましたが、まだ大きな問題があります ?? 頭の中:

- カテゴリの挿入、更新、または削除は面倒ですか? 左と右の数字の番号を付け直す必要があるようです...次のシナリオでは、LINQ クエリはどのようになりますか?

  • 子ノードを削除します (すべてのノードの左/右の値を再番号付けします)
  • 親ノードを削除します (孤児はどうしますか?)
  • 子ノードを別の親ノードに移動する (再度番号を付け直す)

私の理解が正しければ、常に子ノードの左/右の値は常に親ノードの左/右の値の間にありますか?

カテゴリだけが静的であれば、十分に簡単に思えます...おそらく、概念を理解するためにもっと時間を費やす必要があります.

どんな助けでも大歓迎です!

4

0 に答える 0