我可以从XML文件生成c#类吗?


当前回答

我之前发现了这个网站。它将XML和JSON转换为c#和Java类。有几个选项可以根据需要进行调整。我经常用它。 https://json2csharp.com/xml-to-csharp

其他回答

将XML转换为c#类:

导航到Microsoft Visual Studio市场: ——https://marketplace.visualstudio.com 在搜索栏中输入文本: XML到类的代码工具 下载、安装并使用该应用程序

注意:在适当的时候,这个应用程序可能会被取代,但有可能会有另一个工具做同样的事情。

您可以按照Darin的建议使用xsd。

除此之外,建议编辑测试。xsd文件创建一个更合理的模式。

对于整数值,Type ="xs:string"可以更改为Type ="xs:int" minOccurs="0"可以更改为minOccurs="1",其中该字段是必需的 maxOccurs="unbounded"可以更改为maxOccurs="1",其中只允许一个项

如果希望进一步验证数据,可以创建更高级的xsd-s,但这至少会在生成的c#中为您提供合理的数据类型。

使用下面的语法从XSD文件创建模式类。

C:\xsd C:\Test\test-Schema.xsd /classes /language:cs /out:C:\Test\

我之前发现了这个网站。它将XML和JSON转换为c#和Java类。有几个选项可以根据需要进行调整。我经常用它。 https://json2csharp.com/xml-to-csharp

你应该考虑一个问题

xsd.exe和svcutil都对XML模式文件(.xsd)进行操作。您的XML必须符合这两种工具使用的模式文件。

请注意,各种第三方工具也存在于此。