DataSet ds = new DataSet("Whatev");
DataTable catalog = ds.Tables.Add("Catalog");
DataColumn recCol = catalog.Columns.Add("Rec");
DataTable rec = ds.Tables.Add("Rec");
rec.Columns.AddRange(new DataColumn[] {
new DataColumn("ITEM", typeof(string)),
new DataColumn("QTY", typeof(string)),
new DataColumn("SUB", typeof(string)),
new DataColumn("CATALOG", typeof(string))
});
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
foreach (XmlNode recNode in doc.GetElementsByTagName("Rec"))
{
DataRow row = rec.Rows.Add(
recNode["ITEM"].InnerText,
recNode["QTY"].InnerText,
recNode["SUB"].InnerText,
recNode["CATALOG"].InnerText);
}
. , . , Rec, . datatable , , id rec:
DataSet ds = new DataSet("Whatev");
DataTable catalog = ds.Tables.Add("Catalog");
DataColumn idCol = catalog.Columns.Add("Id");
DataTable rec = ds.Tables.Add("Rec");
rec.Columns.AddRange(new DataColumn[] {
new DataColumn("ITEM", typeof(string)),
new DataColumn("QTY", typeof(string)),
new DataColumn("SUB", typeof(string)),
new DataColumn("CATALOG", typeof(string))
});
catalog.ChildRelations.Add("catToRecRelation", idCol, rec.Columns["CATALOG"]);
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
foreach (XmlNode recNode in doc.GetElementsByTagName("Rec"))
{
catalog.Rows.Add(recNode["CATALOG"].InnerText);
DataRow row = rec.Rows.Add(
recNode["ITEM"].InnerText,
recNode["QTY"].InnerText,
recNode["SUB"].InnerText,
recNode["CATALOG"].InnerText);
}
var childRows = catalog.Rows[0].GetChildRows("catToRecRelation");