C# 树结构保持回归
我用C#和sql数据库创建了一个树形结构(代码、父代码、标题)。 每当此结构的节点发生更改时,我希望保存历史更改。 这样,如果用户希望看到以前的结构,就可以重建以前的树结构。C# 树结构保持回归,c#,sql-server,C#,Sql Server,我用C#和sql数据库创建了一个树形结构(代码、父代码、标题)。 每当此结构的节点发生更改时,我希望保存历史更改。 这样,如果用户希望看到以前的结构,就可以重建以前的树结构。 提前感谢。您如何从应用层访问数据库?您是否使用任何ORM?创建一个具有相同结构的跟踪表+历史日期和链接到原始表的触发器,将所有操作记录到此新跟踪表。这是一个层次结构,而不是树结构。这很重要,因为您可以使用hierarchyid类型而不是parent-child关系。不过,数据版本控制是一个完全不同的问题。您询问的是如何对整
提前感谢。您如何从应用层访问数据库?您是否使用任何ORM?创建一个具有相同结构的跟踪表+历史日期和链接到原始表的触发器,将所有操作记录到此新跟踪表。这是一个层次结构,而不是树结构。这很重要,因为您可以使用
hierarchyid
类型而不是parent-child
关系。不过,数据版本控制是一个完全不同的问题。您询问的是如何对整个表(而不是单个节点或甚至单个路径)进行版本设置每当发生插入或更新时,使用DML触发器跟踪更改。在历史记录表中,将事务表的主键与changedate一起存储为datetime值。这将为您提供过去更改的完整历史记录。hierarchyid
本质上是根目录的路径,因此在历史记录或时态表中保留旧值只会保留该路径。它不会保留到子级或层次结构其余部分的路径