gpt4 book ai didi

c# - 以编程方式从 XML 模式生成测试 XML

转载 作者:数据小太阳 更新时间:2023-10-29 02:17:48 26 4
gpt4 key购买 nike

我现在已经搜索了一些,但我无法找到以编程方式从 XML 模式自动生成数据的方法。假设我有这个 XML 模式:

<xs:element xmlns:xs="http://www.w3.org/2001/XMLSchema" name ="Persons">
<xs:complexType>
<xs:sequence>
<xs:element name="Person">
<xs:complexType>
<xs:sequence>
<xs:element name="FirstName" type="xs:string" />
<xs:element name="LastName" type="xs:string" />
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>

我可以使用 VS 函数“生成示例 XML”从中创建 XML enter image description here
有没有办法以编程方式执行此操作?

编辑:指定。我不想自己创建所有对象并以编程方式插入数据。我希望它像 VS 中的“生成示例 XML”一样自动创建对象和属性。这样做的原因是我想更改 XSD 而不必对 xml 示例生成做任何事情。

最佳答案

经过一些搜索。我找到了 project已经实现了 xml 示例生成器。我创建了一个测试解决方案并导入了类。然后我删除了 XmlGen.cs 文件并创建了我自己的主要方法。输出将基于根元素。

public static void Main(string[] args)
{
using (var stream = new MemoryStream(File.ReadAllBytes("schema.xsd")))
{
var schema = XmlSchema.Read(XmlReader.Create(stream ), null);
var gen = new XmlSampleGenerator(schema, new XmlQualifiedName("rootElement"));
gen.WriteXml(XmlWriter.Create(@"c:\temp\autogen.xml"));
Console.WriteLine("Autogenerated file is here : c:\temp\autogen.xml");
}
}

关于c# - 以编程方式从 XML 模式生成测试 XML,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14394310/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com