我需要为大约 65 个 XSD 文件创建 XML 序列化程序类,为此我使用 Microsoft 的 XSD.EXE生成 C# 代码...
但是,我一直在结果输出文件中遇到 Window CMD 的字符限制(其中 XSD.EXE 结合了包含的每个 XSD 的名称):“指定的路径、文件名或两者都太长。完全限定的文件名必须少于 260 个字符,并且目录名称必须少于 248 个字符。”
长话短说,似乎我可以让所有这些一起验证和生成的唯一方法是我是否可以合并所有 XSD(取消引用包含/导入,XSD.EXE 无法解析 schemaLocation无论如何)变成一个大的。
请告诉我有一个工具可以做到这一点......
最佳答案
您可以做的是创建另一个名为 file.xsd 的新文件,其中包含所有架构名称,然后诀窍是使用 .\作为前缀命名最后一个架构文件。
文件.xsd
<xsd xmlns='http://microsoft.com/dotnet/tools/xsd/'>
<generateClasses language='CS' namespace='MyNamespace'>
<schema>First.xsd</schema>
<schema>Second.xsd</schema>
<!-- more schema files here -->
<schema>.\Third.xsd</schema>
</generateClasses>
</xsd>
现在运行命令“xsd.exe/p:file.xsd/classes”,你会得到生成的类文件:)
关于.net-3.5 - 可以将多个 XSD 文件合二为一的工具?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3859319/