我可以从XML文件生成c#类吗?
当前回答
你应该考虑一个问题
xsd.exe和svcutil都对XML模式文件(.xsd)进行操作。您的XML必须符合这两种工具使用的模式文件。
请注意,各种第三方工具也存在于此。
其他回答
使用下面的语法从XSD文件创建模式类。
C:\xsd C:\Test\test-Schema.xsd /classes /language:cs /out:C:\Test\
是的,通过使用xsd.exe
D:\temp>xsd test.xml
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\temp\test.xsd'.
D:\temp>xsd test.xsd /classes
Microsoft (R) Xml Schemas/DataTypes support utility
[Microsoft (R) .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation. All rights reserved.
Writing file 'D:\temp\test.cs'.
笔记
回答如何在开发人员命令提示中将目录更改为d:\temp可能有用。
如果您为多维数组生成类,XSD.exe生成器中有一个错误,但有变通方法。
我之前发现了这个网站。它将XML和JSON转换为c#和Java类。有几个选项可以根据需要进行调整。我经常用它。 https://json2csharp.com/xml-to-csharp
一开始我以为膏体特别版是圣杯!但后来我试了一下,我的头发变白了,就像印第安纳·琼斯电影里那样。
但现在我使用http://xmltocsharp.azurewebsites.net/,现在我像以前一样年轻。
以下是它产生的部分内容:
namespace Xml2CSharp
{
[XmlRoot(ElementName="entry")]
public class Entry {
[XmlElement(ElementName="hybrisEntryID")]
public string HybrisEntryID { get; set; }
[XmlElement(ElementName="mapicsLineSequenceNumber")]
public string MapicsLineSequenceNumber { get; set; }
你应该考虑一个问题
xsd.exe和svcutil都对XML模式文件(.xsd)进行操作。您的XML必须符合这两种工具使用的模式文件。
请注意,各种第三方工具也存在于此。
推荐文章
- Linq-to-Entities Join vs GroupJoin
- 为什么字符串类型的默认值是null而不是空字符串?
- 在list中获取不同值的列表
- 组合框:向项目添加文本和值(无绑定源)
- AutoMapper:“忽略剩下的?”
- 如何为ASP.net/C#应用程序配置文件值中的值添加&号
- 从System.Drawing.Bitmap中加载WPF BitmapImage
- 如何找出一个文件存在于c# / .NET?
- 为什么更快地检查字典是否包含键,而不是捕捉异常,以防它不?
- [DataContract]的命名空间
- string. isnullorempty (string) vs. string. isnullowhitespace (string)
- 完全外部连接
- 如何使用。net 4运行时运行PowerShell ?
- 在foreach循环中编辑字典值
- 如何在xml文档中引用泛型类和方法