【问题标题】:.NET Core 3.1/5 and SQL Server HierarchyId.NET Core 3.1/5 和 SQL Server HierarchyId
【发布时间】:2021-08-06 08:14:10
【问题描述】:

如何在 .NET Core 中自动/以编程方式生成 HierarchyId,我将 Category 设置为另一个子项,并希望 HierarchyId 字段自动更新,但没有任何反应。

我需要一种方法来手动计算和更新吗?

public class Category : BaseModelSimple<int>
{
    public HierarchyId Node { get; set; }

    public int? ParentId { get; set; }

    [ForeignKey("ParentId")]
    public virtual Category Parent { get; set; }

    public virtual ICollection<Category> Childs { get; set; }
}

【问题讨论】:

    标签: sql-server asp.net-core parent-child ef-core-3.1 hierarchyid


    【解决方案1】:

    HierarchyId 列不会自动生成值,您显然甚至可以输入重复项,除非您还有一个强制唯一值的索引,如果您需要多个根条目,这可能会出现问题。我见过的大多数示例都预先填充根节点,然后从那里添加子节点,这涉及获取要添加子节点的节点,获取所有子节点,找出最后一个,然后在此基础上添加。

    您可能会发现以下链接的评论有助于入门,希望您不会遇到与我无法通过 .NET 添加数据相同的问题,因为我不断收到强制转换错误。

    Using HierarchyId with Entity Framework Core

    【讨论】:

      猜你喜欢
      • 2020-12-05
      • 1970-01-01
      • 2021-03-20
      • 2020-08-17
      • 2021-11-09
      • 1970-01-01
      • 2021-05-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多