在不使用属性的情况下将对象序列化为XML

巴瓦扎

是否可以在不指定任何序列化属性的情况下进行控制XmlSerializer/DataContractSerializer行为?

更具体地说,我想控制序列化(XmlIgnore,自定义属性名称等),但不修饰我的属性。用例:

  • 现有的大型类,我不希望使用序列化属性来污染
  • 序列化没有源代码的类
  • 使用切换XmlSerializerDataContractSerializer以JSON不改变类代码

例如,如何在不取消注释属性的情况下序列化以下内容:

// [Serializable]
public MyClass
{
    // [XmlIgnore] - The following property should not be serialized, without uncommenting this line
    public int DontSerializeMeEvenThoughImPublic { get; set; }

    // [XmlAttribute("another_name")] - should be serialized as 'another_name', not 'SerializeMeAsXmlAttribute'
    public double SerializeMeAsXmlAttribute { get; set; }

    // [DataMember] - should be included
    private string IWantToBeSerializedButDontDecorateMeWithDataMember { get; set; }
}
埃利·阿尔格兰蒂

您不能(优雅地做)。
修改XmlSerializer序列化类的唯一方法是使用属性(SerializableAttribute不需要)。DataContractSerializer是雪上加霜。

一个可能的解决方案是为XML序列化/ desrialization创造中级班和使用Automapper到“真正的”类和中介之间的数据复制。我已经使用这种方法将前端XML序列化问题排除在我的业务逻辑数据类型之外。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在不使用对象的情况下序列化为JSON

来自分类Dev

在Jackson中没有根密钥的情况下将对象序列化为JSON

来自分类Dev

如何在不包括属性名称的情况下将匿名对象序列化为JSON

来自分类Dev

如何在不使用序列化的情况下制作Java对象的深层副本?

来自分类Dev

在不使用asInstanceOf的情况下从Scala中的XStream反序列化XML?

来自分类Dev

在不使用Serializable()的情况下将对象写入文件

来自分类Dev

如何在不丢失其特定属性的情况下将子实例反序列化为父对象?

来自分类Dev

如何在没有模式信息的情况下将C#对象序列化为xml?

来自分类Dev

如何在没有父元素的情况下将列表序列化为XML

来自分类Dev

如何在没有父元素的情况下将列表序列化为XML

来自分类Dev

将对象集合序列化为JSON和XML

来自分类Dev

无法将对象序列化为XML文件

来自分类Dev

如何将对象序列化为 Xml

来自分类Dev

如何在c#中使用循环依赖项将对象序列化为xml?

来自分类Dev

C++ 使用 for 循环将对象列表序列化为 XML

来自分类Dev

如何在不使用jQuery的情况下将对象转换为对象数组?

来自分类Dev

使用GSON将对象序列化为JSON输入流?

来自分类Dev

无法使用DataContractJsonSerializer将对象序列化为JSON

来自分类Dev

如何在不使用 Javascript 或 jQuery 添加属性的情况下将对象的属性复制到另一个对象中?

来自分类Dev

不使用顶级arrayElement的Xml数组反序列化为C#对象

来自分类Dev

JSON.net在不使用模式的情况下反序列化JSON

来自分类Dev

将对象Linq序列化为SQL

来自分类Dev

将对象序列化为JToken

来自分类Dev

将对象Linq序列化为SQL

来自分类Dev

将对象自动序列化为捆绑

来自分类Dev

如何使用Json.Net将对象序列化为JSON字符串属性而不是对象

来自分类Dev

如何在不反转堆栈的情况下使用System.Text.Json将Stack <T>序列化为JSON?

来自分类Dev

将对象序列化为JSON,但仅包含具有[DataMember]属性的属性

来自分类Dev

将对象序列化为JSON,但仅包含具有[DataMember]属性的属性

Related 相关文章

  1. 1

    如何在不使用对象的情况下序列化为JSON

  2. 2

    在Jackson中没有根密钥的情况下将对象序列化为JSON

  3. 3

    如何在不包括属性名称的情况下将匿名对象序列化为JSON

  4. 4

    如何在不使用序列化的情况下制作Java对象的深层副本?

  5. 5

    在不使用asInstanceOf的情况下从Scala中的XStream反序列化XML?

  6. 6

    在不使用Serializable()的情况下将对象写入文件

  7. 7

    如何在不丢失其特定属性的情况下将子实例反序列化为父对象?

  8. 8

    如何在没有模式信息的情况下将C#对象序列化为xml?

  9. 9

    如何在没有父元素的情况下将列表序列化为XML

  10. 10

    如何在没有父元素的情况下将列表序列化为XML

  11. 11

    将对象集合序列化为JSON和XML

  12. 12

    无法将对象序列化为XML文件

  13. 13

    如何将对象序列化为 Xml

  14. 14

    如何在c#中使用循环依赖项将对象序列化为xml?

  15. 15

    C++ 使用 for 循环将对象列表序列化为 XML

  16. 16

    如何在不使用jQuery的情况下将对象转换为对象数组?

  17. 17

    使用GSON将对象序列化为JSON输入流?

  18. 18

    无法使用DataContractJsonSerializer将对象序列化为JSON

  19. 19

    如何在不使用 Javascript 或 jQuery 添加属性的情况下将对象的属性复制到另一个对象中?

  20. 20

    不使用顶级arrayElement的Xml数组反序列化为C#对象

  21. 21

    JSON.net在不使用模式的情况下反序列化JSON

  22. 22

    将对象Linq序列化为SQL

  23. 23

    将对象序列化为JToken

  24. 24

    将对象Linq序列化为SQL

  25. 25

    将对象自动序列化为捆绑

  26. 26

    如何使用Json.Net将对象序列化为JSON字符串属性而不是对象

  27. 27

    如何在不反转堆栈的情况下使用System.Text.Json将Stack <T>序列化为JSON?

  28. 28

    将对象序列化为JSON,但仅包含具有[DataMember]属性的属性

  29. 29

    将对象序列化为JSON,但仅包含具有[DataMember]属性的属性

热门标签

归档