我有一个自我引用的角色表,代表一个树结构
ID [INT] AUTO INCREMENT
Name [VARCHAR]
ParentID [INT]
我正在使用ADO.NET DataTable和DataAdapter加载并将值保存到该表。 如果仅创建现有行的子级,则此方法有效。 如果我要创建一个子行,然后再创建一个子行,然后执行Update,则DataTable生成的临时ID值将进入ParentID列。 我设置了以下数据关系:
dataset.Relations.Add(New DataRelation("RoleToRole",RoleTable.Columns("ID"), RoleTable.Columns("ParentID")))
当我在DataTable中创建新的子行时,我调用SetParentRow方法
newRow.SetParentRow(parentRow)
在DataAdapter上调用Update时,我需要做些特殊的事情来使ID生成以递归方式传播吗?