使用类属性中的XElement创建XML文件

时间:2018-08-02 08:38:12

标签: c# xml lambda

我得到了Foo类的List<Foo> fooList,它具有多个属性

Property01
Property02
Property03

我想创建类似的XML

<Foos>
 <Foo>
  <Property01>value1</Property01>
  <Property02<value2</Property02>
  <Property03<value3</Property03>
 </Foo>
 <Foo>
  <Property01>value1</Property01>
  <Property02<value2</Property02>
  <Property03<value3</Property03>
 </Foo>
</Foos>

我尝试过

new XElement
("Foos",
 fooList.Select
  (Foo =>
   new XElement
   ("Foo",
      new XElement("Property01",Foo.Property01),
      new XElement("Property02",Foo.Property02),
      new XElement("Property03",Foo.Property03),
   )
  )
)

但是Lambda表达式仅适用于一个属性。

1 个答案:

答案 0 :(得分:0)

您的代码将创建预期的XML。 也许问题是最后一个逗号?

new XElement
("Foos",
 fooList.Select
  (Foo =>
   new XElement
   ("Foo",
      new XElement("Property01",Foo.Property01),
      new XElement("Property02",Foo.Property02),
      new XElement("Property03",Foo.Property03) // deleted comma
   )
  )
)