Появляется дублирующий тег структуры XML - PullRequest
1 голос
/ 11 декабря 2019

Я пытаюсь создать Serliaization для структуры XML. Цель состоит в том, чтобы получить тег с несколькими дочерними элементами, такими как количество, и я могу добиться этого, добавив подкласс внутри структуры, однако узел классаа также дочерние узлы в виде дубликата для примера:

Цель состоит в том, чтобы добиться этой структуры:

        <Quantity>
          <QuantityString>13686.37</QuantityString>
          <DataType>float</DataType>
          <UnitOfMeasure>KG</UnitOfMeasure>
        </Quantity>
        <Quantity>
          <QuantityString>13.69</QuantityString>
          <DataType>float</DataType>
          <UnitOfMeasure>TO</UnitOfMeasure>
        </Quantity>

Мой результат выглядит следующим образом:

      <Quantity>
        <Quantity>
          <QuantityString>sample string 1</QuantityString>
          <DataType>sample string 2</DataType>
          <UnitOfMeasure>sample string 3</UnitOfMeasure>
        </Quantity>
        <Quantity>
          <QuantityString>sample string 1</QuantityString>
          <DataType>sample string 2</DataType>
          <UnitOfMeasure>sample string 3</UnitOfMeasure>
        </Quantity>
      </Quantity>

Первое количество происходит от самого класса:

[DataContract]
public class PersonShopList
{
    [DataMember(Name = "Item", Order = 1)]
    public String ItemName{ get; set; }

    [DataMember(Name = "Quantity", Order = 2)]
    public Quantity[] Quantity;
}

[DataContract]
public class Quantity
{
    [DataMember(Name = "QuantityString", Order = 1)]
    public String QuantityString { get; set; }

    [DataMember(Name = "DataType", Order = 2)]
    public String DataType { get; set; }

    [DataMember(Name = "UnitOfMeasure", Order = 3)]
    public String UnitOfMeasure { get; set; }
}
...