使用F#TypeProvider进行XML操作
给定以下XML结构:使用F#TypeProvider进行XML操作,f#,type-providers,fsharp.data.typeproviders,F#,Type Providers,Fsharp.data.typeproviders,给定以下XML结构: <?xml version="1.0" encoding="utf-8"?> <Persons> <Person> <Name>Person 1</Name> <Age>30</Age> </Person> <Person> <Name>Person 2</Name> <Age>32<
<?xml version="1.0" encoding="utf-8"?>
<Persons>
<Person>
<Name>Person 1</Name>
<Age>30</Age>
</Person>
<Person>
<Name>Person 2</Name>
<Age>32</Age>
</Person>
</Persons>
方法
XElement.Add(content:obj)
接收内容对象
PersonXmlProvider.Person.ToString将类型序列化为XML,并将其作为文本节点添加到主文档中
因此,当它被序列化时,文本节点被转义,并且您可以在输出中看到XML实体
附言
解决方案是一直使用XElement
let person = new PersonXmlProvider.Person("Person 3", 33)
personsXml.XElement.Add(person.XElement)
显示生成的XML。非常感谢#“不用客气,”马库斯克说。(:您可能还希望更新到最新版本,因为
<?xml version="1.0" encoding="utf-8"?>
<Persons>
<Person>
<Name>Person 1</Name>
<Age>30</Age>
</Person>
<Person>
<Name>Person 2</Name>
<Age>32</Age>
</Person><Person>
<Name>Person 3</Name>
<Age>33</Age>
</Person>
</Persons>
let person = new PersonXmlProvider.Person("Person 3", 33)
personsXml.XElement.Add(person.XElement)