我有两个来自两个数据库表的xml代码,我用C#中的XmlReaders读取它们。 然后我设置了DataSet并用读者填充它们并合并它们。现在我想定义它们之间的关系,以在DataGridView中显示整个数据。但我在数据网格中看不到任何内容。没有错误也没有输出。
这是我的C#代码:
XmlReader reader1 = XmlReader.Create("http://example.com/ShowTaxonomy.php/");
XmlReader reader2 = XmlReader.Create("http://example.com/ShowTerms.php/");
ds1.ReadXml(reader1);
ds2.ReadXml(reader2);
ds2.Merge(ds1);
newRelation = new DataRelation("Buy", ds2.Tables["terms"].Columns["term_id"], ds2.Tables["term_taxonomy"].Columns["term_id"]);
我也试过这个,但它也不起作用:
ds2.Relations.Add("Buy", ds2.Tables["d3CwX_terms"].Columns["term_id"], ds2.Tables["d3CwX_term_taxonomy"].Columns["term_id"]);
ds2.Relations.Add(newRelation);
我使用此代码填充我的数据网格:
frm.dgv.DataSource = ds2.Relations["Buy"];
我可以做些什么来输出? 先谢谢
答案 0 :(得分:0)
尝试,
dataSet.AcceptChanges();
或
ds1.Tables [0] .PrimaryKey = new DataColumn [] {ds1.Tables [0] .Columns [" empkey"]}; ds2.Tables [0] .PrimaryKey = new DataColumn [] {ds2.Tables [0] .Columns [" empkey"]};
//这是关键线 ds1.Merge(ds2,true,MissingSchemaAction.Add);