【发布时间】:2011-09-02 18:37:59
【问题描述】:
我有这样的代码,可以将 xml 文件读入数据集,然后在 datagridview 中显示数据。
我做了一些谷歌搜索,发现我的数据集在 xml 中读取,但仅在元素的第一个“级别”上。
对于复杂类型来说,它的范围还不够大。但是,它确实将复杂类型或“内联”数据保存到数据集中的下一个表中。 xml 文件都在一个数据集中,但表会根据元素的复杂类型进行拆分。
有什么方法可以将表格组合成一个大表格,这样我就不需要在表格视图之间切换时使用数字上下值了?
对于我的程序,我试图让用户能够更轻松地操作这些 xml 文件。拥有一张大桌子比一堆小桌子要好得多。
代码如下:
string filename = Address.Text;
dataGridView1.AutoGenerateColumns = true;
DataSet dataSet1 = new DataSet("DEFAULT");
dataSet1.ReadXml(filename, XmlReadMode.Auto);
bindingSource1.DataSource = dataSet1.Tables[(int)tablenumber.value].DefaultView;
dataGridView1.DataSource = bindingSource1;
richTextBox1.Text = filename + " loaded.";
label2.Text = "File Open: " + filename;
以此类推,但 tablenumber 将从 0 开始。这只是数据集在读取 xml 文件时具有的“第一个”表。此外,我确实有一个与 xml 文件一起使用的架构。我是否还需要读取架构,以便它知道存在复杂类型并根据架构进行读取?
(.NET 3.5 SP1,Visual Studio 2008 C#)
【问题讨论】:
标签: xml types dataset xsd complextype