【问题标题】:Using xsd to generate XML in .net在.net中使用xsd生成XML
【发布时间】:2008-09-16 19:20:18
【问题描述】:

我在一个 .net 应用程序中工作,我们需要根据从数据库中检索到的数据集动态生成 XML 文件。 XML 模式应该基于提供的 xsd。我想知道是否有任何方法可以将数据集或每个数据行与 xsd 绑定或关联。我不知道它是否可以完成,或者我可能从错误的角度考虑使用 XSD。如果我错了,请纠正我,让我知道将从 db 检索到的数据关联到预定义架构的最佳方法。谢谢。

更新:如果我对 xsd 的看法有误,请说明 xsd 的使用方式(或者指出一些有用的链接)。

【问题讨论】:

  • 我一直在寻找这样的代码,没有现成的可用..看起来没有那么简单。好。如果它是为了您的测试,那就去 Altova XMLSpy,像 gem 一样创建 XML。

标签: .net xml xsd


【解决方案1】:

将架构文档用作 Visual Studio 随附的命令行 xsd.exe 程序的参数,以生成可包含在项目/解决方案中的类文件或类型化数据集。这些类或数据集可以序列化为 xml,并符合您用于创建它们的架构文档。

唯一的问题是它不是动态的:您不能等到运行时才能获取架构文件。但是没有任何内置支持。

【讨论】:

    【解决方案2】:

    除了 Joel Coehoorn 建议的解决方案——从 XSD 生成类型化的数据集或业务实体——让我添加一些其他方法:

    1. 如果您使用支持 XML 类型的数据库,如 Oracle 或 MS SQL Server,您可以直接在 SQL 查询中构建 XML,并绕过数据集的填充直接从数据库中检索 XML。
    2. 如果您的数据库架构没有直接映射到给定的 XSD,即您已经有一个类型化的数据集或一组 XML 可序列化的业务对象,并且这些对象被序列化为不符合 XSD 的 XML,那么您就是提供,然后您可以使用 XSLT 将您的 XML 转换为另一个符合给定 XSD 的 XML 文档。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-28
      • 2010-12-15
      • 1970-01-01
      • 1970-01-01
      • 2011-09-25
      相关资源
      最近更新 更多