包装多个XML标签,而无需创建不同的类C#

问题描述

我上课了

    public class TestModel
    {
        public int Number { get; set; }
        public string Text { get; set; }
    }

使用以下xml转换

<TestModel>
  <Number>2</Number>
  <Text>text</Text>
</TestModel>

但是我需要用多个xml标签包装

<Wrapper1>
   <Wrapper2>
      <TestModel>
         <Number>2</Number>
         <Text>text</Text>
      </TestModel>
   </Wrapper2>
</Wrapper1>

是否有任何属性可以放置这种包装器?喜欢

[XElementWrapper("Wrapper1","Wrapper2")]
public class TestModel
{
..
}

我不想创建仅包含包装器的伪类或通过代码创建XML元素

解决方法

是的,您可以通过实现IXmlSerializable

来实现