日期:2014-05-18  浏览次数:20711 次

碰到一个比较棘手的问题, 在DataSet中创建了表之间的关联, 但转为XML以后,无法描述出表之间的关系 .
C# code


        ds.Tables.Add(dt);
        ds.Tables.Add(dt_dtl);
        CreateRelation(dt.Columns["id"], dt_dtl.Columns["id"], ds);

        // 创建关联
        private void CreateRelation(DataColumn masterCol, DataColumn detailCol, DataSet ds)
        {
            DataRelation relCustOrder;
            relCustOrder = new DataRelation("CustomersOrders ", masterCol, detailCol);
            ds.Relations.Add(relCustOrder);
        } 



然后将 ds 转为XML:
ds.WriteXml(Application.StartupPath + "\\1.xml");

最后将XML还原为ds以后, 表之间的关系没了, 请问这种问题怎样解决呢?
ds.ReadXml(Application.StartupPath + "\\1.xml");

请大家帮忙看看.谢谢

------解决方案--------------------
ds.WriteXmlSchema 
ds.ReadXmlSchema
msdn中的解释
使用 WriteXmlSchema 方法将 DataSet 的架构写入 XML 文档。 架构包括表、关系和约束定义。