Why does XSD.EXE Create Two .XSD Files, and How to Use Them?(为什么 XSD.EXE 会创建两个 .XSD 文件,以及如何使用它们?)
问题描述
我正在使用以下命令从我的输入 XML 文件生成相关的 xsd 文件——response.xml,我的困惑是(1)为什么有两个 xsd 文件输出(response.xsd 和 response_app1.xsd),我想应该只生成其中一个?(2) 如果我需要使用 xsd/classes 生成 C# 类文件,我应该使用哪个 xsd 文件?
I am using the following command to generate related xsd file from my input XML file -- response.xml, my confusion is (1) why there are two xsd file output (response.xsd and response_app1.xsd), I think there should be only one of them generated? (2) If I need to generate C# class file by using xsd /classes, which xsd file should I use?
我的环境:VSTS 2008 + C# + .Net 3.5.
My environment: VSTS 2008 + C# + .Net 3.5.
D:>xsd response.xml
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 2.0.50727.3038]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:
esponse.xsd'.
这是我的输入 XML 文件和输出 XSD 文件,
Here is my input XML file and ouput XSD files,
http://www.mediafire.com/file/kzzoxw0zwgq/inputoutput.zip
编辑 1:
当我执行xsd response.xsd生成相关C#类时,出现错误信息,这里是详细输出,
when I execute xsd response.xsd to generate related C# class, there are error messages, and here are the detailed output,
D:>xsd response.xsd /classes
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 2.0.50727.3038]
Copyright (C) Microsoft Corporation. All rights reserved.
Schema validation warning: The 'http://www.mycorp.com/Order/2009/05/mex:Items' e
lement is not declared. Line 10, position 16.
Warning: Schema could not be validated. Class generation may fail or may produce
incorrect results.
Error: Error generating classes for schema 'response'.
- The element 'http://www.mycorp.com/Order/2009/05/mex:Items' is missing.
If you would like more help, please type "xsd /?".
提前致谢,乔治
推荐答案
乔治,
要从这些文件中生成类,您必须在命令行中列出两者:
To generate classes from these files, you must list both on the command line:
D:>xsd response.xsd response_app1.xsd /classes
<小时>
已经正确地说这两个 .xsd 文件是因为您的原始 XML 文件中有两个 XML 命名空间.顺便说一句,我在这里猜测了一下,因为您没有发布 XML 文件.
It has already been correctly said that the two .xsd files are because there were two XML namespaces in your original XML file. BTW, I'm guessing a little here because you did not post the XML file.
这篇关于为什么 XSD.EXE 会创建两个 .XSD 文件,以及如何使用它们?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:为什么 XSD.EXE 会创建两个 .XSD 文件,以及如何使


- C# 中多线程网络服务器的模式 2022-01-01
- MoreLinq maxBy vs LINQ max + where 2022-01-01
- 良好实践:如何重用 .csproj 和 .sln 文件来为 CI 创建 2022-01-01
- WebMatrix WebSecurity PasswordSalt 2022-01-01
- 输入按键事件处理程序 2022-01-01
- 如何用自己压缩一个 IEnumerable 2022-01-01
- 带有服务/守护程序应用程序的 Microsoft Graph CSharp SDK 和 OneDrive for Business - 配额方面返回 null 2022-01-01
- 在哪里可以找到使用中的C#/XML文档注释的好例子? 2022-01-01
- C#MongoDB使用Builders查找派生对象 2022-09-04
- Web Api 中的 Swagger .netcore 3.1,使用 swagger UI 设置日期时间格式 2022-01-01