EF4(コードファースト)またはnHibernateでリポジトリパターンを使用して階層構造を管理する方法についてのアプローチ/チュートリアルをお勧めしますか?一例として、EFまたはNHibernateを使用したリポジトリパターンの階層構造
、私は次のように表示してきたとしましょう:
Topic
-> Comment1
-> Comment1_1
-> Comment1_2
-> Comment1_2_1
理想的なクラス構造とどのようにそれがORMとリポジトリのパターンでアップ配線すべきは何ですか?リポジトリパターンとEF/nHibernateに関する記事はたくさんありますが、階層構造でそれらを使用しているものは見つかりませんでした。クラス構造上の
私の考え:
Class Topic
{
public int ID {get;set;}
public string Topic {get;set;}
}
Class Comment
{
Public int ID {get;set;}
Public int TopicID {get;set}
Public string Comment {get;set;}
Public int ParentID {get;set;} //recursion will happen here
Public int Level {get;set;} //Can be used to bypass recursion and display topic with all comments with indention based on Level
}
こんにちは..ありがとう。これは理想的なことです。しかし、私は、コメントが部分的に読み込まれているサイトを見てきました。あなたがスクロールし続けると、コメントのチャンクが追加され続けています。おそらくそれはTake()Skip()メソッドを使用して実現できますが、興味深い部分はどれだけ読み込むかです。 1つのトップレベルのコメントは、すべてのサブコメントを取得する必要があります。 – helloworld
そのような場合は、クエリごとに読み込まれるトップレベルのcomentsの数を制御するためにSQLを使用する必要があります。それぞれのトップレベルのコメントもすべての依存関係を読み込みます。 –