使用Visual Studio 2010从xsd文件生成。net 4.0 c#类(实体)有哪些选项?


当前回答

除了WSDL,我还有xsd文件。上面的工作在我的情况下给错误。它的工作原理如下

wsdl /l:C# /out:D:\FileName.cs D:\NameApi\wsdl_1_1\RESAdapterService.wsdl 
D:\CXTypes.xsd D:\CTypes.xsd 
D:\Preferences.xsd 

其他回答

除了WSDL,我还有xsd文件。上面的工作在我的情况下给错误。它的工作原理如下

wsdl /l:C# /out:D:\FileName.cs D:\NameApi\wsdl_1_1\RESAdapterService.wsdl 
D:\CXTypes.xsd D:\CTypes.xsd 
D:\Preferences.xsd 

Marc Gravells的答案对我来说是正确的,但我的xsd扩展了.xml。当我使用xsd程序时,它给出: -表(Amt)不能是它自己的嵌套关系的子表。

根据这个KB325695,我把扩展名从。xml重命名为。xsd,它工作得很好。

如果您希望生成具有自动属性的类,请使用此将XSD转换为XML,然后使用此将XML转换为JSON,并将结果复制到剪贴板。 然后在VS中,在你要创建类的文件中,点击编辑>粘贴特殊>将JSON粘贴为类。

我在这里向您展示使用Vs2017和Vs2019的最简单方法 用Visual Studio打开xsd,并按照url建议生成一个示例xml文件。

在设计视图中打开xsd后,单击xml模式资源管理器

2. 在“XML Schema Explorer”中向下滚动以找到根/数据节点。右键单击根/数据节点,它将显示“生成示例XML”。如果没有显示,则意味着您不在数据元素节点上,而是在任何数据定义节点上。

将生成的Xml复制到剪贴板中 在解决方案中创建一个新的空类并删除类定义。只保留Namespace 当您的鼠标指针集中在类内部时,选择EDIT->粘贴特殊->将Xml粘贴为类

我在批处理脚本中使用XSD直接从XML生成.xsd文件和类:

set XmlFilename=Your__Xml__Here
set WorkingFolder=Your__Xml__Path_Here

set XmlExtension=.xml
set XsdExtension=.xsd

set XSD="C:\Program Files (x86)\Microsoft SDKs\Windows\v8.1A\bin\NETFX 4.5.1\Tools\xsd.exe"

set XmlFilePath=%WorkingFolder%%XmlFilename%%XmlExtension%
set XsdFilePath=%WorkingFolder%%XmlFilename%%XsdExtension%

%XSD% %XmlFilePath% /out:%WorkingFolder%
%XSD% %XsdFilePath% /c /out:%WorkingFolder%