【问题标题】:Loading XML to DataSet tables in .Net 4 / VS2010 not loading all elements /attributes将 XML 加载到 .Net 4 / VS2010 中的数据集表不加载所有元素/属性
【发布时间】:2011-06-13 15:29:14
【问题描述】:

我正在尝试将复杂的 XML 文档加载到数据集表中。这是使用 xsd 文档验证 xml 并尝试加载到数据集表的代码:

    DataSet ds = new DataSet();
    ds.ReadXmlSchema("test.xsd");
    ds.EnforceConstraints = true;
    ds.ReadXml("test.xml", XmlReadMode.ReadSchema);

在此之后,我尝试查看使用以下代码创建的所有表格表/列”

       foreach (DataTable x in ds.Tables) {
            Console.WriteLine("TableName: {0}", x.TableName);
            foreach (DataColumn dc in x.Columns) {
                Console.WriteLine("   column: {0} , DataType: {1}", 
                            dc.ColumnName, dc.DataType);
            }
        }

在打印的表格/列输出中,我看不到 XSD 中的几个元素/属性。当我在输出中没有的那些 Xs:element 部分与输出中的部分一起移动时,现在输出显示了那些不早于并且没有显示之前存在的那些......我将不胜感激任何帮助/想法...

xsd 大约 50K 和 xml 大约 200K ,不确定它们是否可以上传/粘贴在这里...

谢谢 桑卡尔

【问题讨论】:

    标签: c# .net xml dataset


    【解决方案1】:

    从您想要的 DataTable 开始,然后从中创建 xsd 架构可能会更容易:

    如图here

    【讨论】:

    • XSD 带有源自不同位置的 XML 文档。我无法控制它。我必须用它来验证文件..
    • 您同时收到了 XSD 架构和 XML 文档,并且 XML 文档没有根据架构进行验证?也许您可以在他们发送之前询问谁将其发送给您以验证它。
    • 问题不在于针对 XSD 验证的 XML 文档。它在使用 XSD 创建的 DATASET 表中。使用 XSD 创建的 DATASET 表显然遗漏了一些元素和属性。我找不到这些元素/属性作为表格或创建的表格中的属性.. -- 谢谢,Sankar
    猜你喜欢
    • 2015-02-18
    • 1970-01-01
    • 2012-09-09
    • 2011-02-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-12
    • 2021-05-01
    相关资源
    最近更新 更多