Ich sehe drei mögliche Lösungen (es ist nur meine Meinung):
1.
public class Comment
{
...
public List<Comment> ChildComments {get;set;}
}
Vorteile: Sie können hierarchische Daten einfach laden und anzeigen. Sie kennen Elternkommentar nicht von Kommentar.
Nachteile: Sie können Kommentare nicht mit irgendeiner ID abfragen und aktualisieren.
2.
public class Comment
{
...
public string ParentCommentId {get;set;}
}
Vorteile: Sie können nach Belieben abfragen/aktualisieren.
Nachteile: Große Menge an Anfragen an Mongo, wenn Sie die Hierarchie laden müssen.
3. Mein Favorit;) :
public class Comment
{
...
public string ParentCommentId {get;set;}
}
public class Article
{
...
public List<Comment> Comments {get;set;}
}
Vorteile: Sie können nach Belieben abfragen/aktualisieren. Sie können Artikel mit allen Kommentaren in einer Anfrage laden. Keine Notwendigkeit, Artikeltyp und Artikel-ID mehrfach zu speichern
Nachteile: Artikel laden und Hierarchie im Speicher aufbauen.
Ich hoffe, das hilft Ihnen bei der Auswahl.