如何使用DataContract添加XML属性

Mag*_*pie 16 .net c# serialization datacontract

我有一个简单的类我正在序列化.

 [DataContract(Name = "Test", Namespace = "")]
 public class Test
 {
    [DataMember(Order = 0, Name = "Text")]
    public string Text { get; set; }

    public Test() {}
 }
Run Code Online (Sandbox Code Playgroud)

这将启动以下XML:

<Test>
   <Text>Text here</Text>
</Test>
Run Code Online (Sandbox Code Playgroud)

我想要的是:

<Test>
   <Text type="MyType">Text here</Text>
</Test>
Run Code Online (Sandbox Code Playgroud)

如何添加XML元素的属性?

提前致谢.

Pet*_*lon 14

您无法向DataContract添加属性.您必须使用Implements ISerializable的类或使用.Net XmlSerializer.

  • 根据执行序列化的系统,可以执行OP要求的操作 - 请参阅:http://stackoverflow.com/questions/4858798/datacontract-xml-serialization-and-xml-attributes/4859084#4859084 (5认同)