0

同じデータセット内のテーブル間の関係を取得するために次のコードがありますが、次のコードを実行すると、エラーが発生し、これらの列には現在一意の値がありません

       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();
        }
4

1 に答える 1

1

コードがタイプミスではない場合(つまり、テーブルMenuをそれ自体に関連付けようとしていない場合)、2つの列(MenuIDとParentID)の値を確認します。テーブルがどのように設定されているかを正確に知らなくても、ParentIDに値が繰り返されている可能性があります。そのため、エラーが発生します。

于 2011-08-10T04:30:32.403 に答える