Vidím tři možná řešení (je to jen můj názor):
1.
public class Comment
{
...
public List<Comment> ChildComments {get;set;}
}
Výhody: můžete snadno načíst, zobrazit hierarchická data. nepoznáte rodičovský komentář od komentáře.
Nevýhody: nemůžete se dotazovat a aktualizovat komentář s nějakým ID.
2.
public class Comment
{
...
public string ParentCommentId {get;set;}
}
Výhody: Můžete se dotazovat/aktualizovat, jak chcete.
Nevýhody: Velké množství požadavků na mongo, když potřebujete hierarchii zatížení.
3. Můj oblíbený;) :
public class Comment
{
...
public string ParentCommentId {get;set;}
}
public class Article
{
...
public List<Comment> Comments {get;set;}
}
Výhody: Můžete se dotazovat/aktualizovat, jak chcete. Můžete načíst článek se všemi komentáři v jedné žádosti. Není třeba ukládat redundantní ArticleType a ArticleId
Nevýhody: Je třeba načíst článek a vytvořit hierarchii v paměti.
Doufám, že vám to pomůže s výběrem..