如何在数据集中的表之间添加关系

时间:2011-08-10 03:49:27

标签: asp.net dataset resultset datarelation

我有以下代码来获取同一数据集中的表之间的关系,但是当运行以下代码我遇到错误说,这些列目前没有唯一值

       DataResultSetDataSet dataset = resultSet as DataResultSetDataSet;
        System.Data.DataSet menuDataSet = new System.Data.DataSet();
        menuDataSet = dataset.Set;
        menuDataSet.DataSetName = "Menus";
        menuDataSet.Tables[0].TableName = "Menu";
        DataRelation relation = new DataRelation("ParentChild", menuDataSet.Tables["Menu"].Columns["MenuID"], menuDataSet.Tables["Menu"].Columns["ParentID"], true);
        relation.Nested = true;
        menuDataSet.Relations.Add(relation);

        menuXml= menuDataSet.GetXml();
        }

1 个答案:

答案 0 :(得分:1)

如果您的代码不是拼写错误(即,您尝试将表格菜单与自身相关联),请检查两列中的值(MenuID和ParentID)。如果不确切知道你的表是如何设置的,我会怀疑ParentID有重复的值,这就是你得到错误的原因。