【发布时间】:2013-06-10 14:26:52
【问题描述】:
我正在寻找一种工具,它可以从我的 W3C 兼容 XSD 文件中自动生成强类型并保持完全保真度。我可以灵活地使用 Java 或 C#。我尝试过使用 JAXB 和 XSD.exe,但是在处理 SimpleType 以及更复杂的类型定义(如 AttributeGroup、ComplexType 等)时,包含的业务逻辑会丢失。我也没有找到处理习语和集合、类型运算符以及本地定义的自动解决方案。
有人知道这样的工具吗?
【问题讨论】:
-
您能否更具体地说明 xsd.exe 或其他标准工具不够好的原因? XSD 中有什么样的“包含的业务逻辑”会迷路?如果 MS 没有合适的工具,那么常用的方法是编写 Visual Studio 扩展。这将允许您在项目中包含 XSD,这些 XSD 会自动生成您需要的代码。 Google 'visual studio extensions XML' 或类似的。
-
我正在处理复杂的模式,例如在 ISO20022 模式中包含 SimpleTypes(IBAN 参考) Pain.001.001.04.xsd 处理时会生成一个简单的字符串并保存与业务相关的信息在 xs:pattern 中数据丢失。我不想在编码方面进行手动工作。
-
我对工具空间的了解不够,无法为您指出可以保留 XSD 的所有方面(包括限制和模式)的工具。有很多 Visual Studio 加载项可供选择。如果你没有找到任何东西,那么不要排除编写你自己的 VS 插件。使用 T4 或 CodeDOM 编写代码生成器并不难。
标签: c# jaxb xsd strong-typing