我想让所有父母在给定Category
时尽可能高效。我发现一些旧线程建议在数据库中使用cte
和view
但最好我想避免完全创建这些。无论如何我可以做到这一点,而无需多次往返数据库获取每个父级,直到父级为空?如果可能,我想使用LINQ Dot Notation
。
https://stackoverflow.com/a/11929928/3850405
https://code.msdn.microsoft.com/windowsdesktop/Recursive-or-hierarchical-bf43a96e
型号:
public class Category
{
[Key, DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int Id { get; set; }
public string Name { get; set; }
public int? ParentId { get; set; }
public virtual Category Parent { get; set; }
public virtual ICollection<Category> Children { get; set; }
}