4.1.2 XmlInclude 在 C# 中的作用及示例

 xmlInclude 是 .NET 中用于 XML 序列化的一个重要特性,XmlInclude 的主要作用是:
  1.告知 XML 序列化器可能遇到的派生类型
  2.解决多态类型的序列化和反序列化问题
  3.允许基类序列化时包含派生类信息
  当你有基类引用指向派生类对象时,如果不使用 XmlInclude,序列化器无法知道实际类型信息,导致序列化/反序列化失败。你会得到 InvalidOperationException,提示序列化器不知道如何处理派生类型。
比如:

        InvalidOperationException: 不应是类型 ConsoleApp2.Circle。使用 XmlInclude 或 SoapInclude 特性静态指定非已知的类型。

        4.1.2 XmlInclude 在 C# 中的作用及示例_第1张图片
关键点说明
  1.必须为所有可能的派生类添加 XmlInclude:否则反序列化时会失败
  2.适用于数组和集合:如示例中的 Shape[]
  3. 与 [Serializable] 的区别:
   [Serializ

你可能感兴趣的:(C#在工控领域中的使用,XmlInclude)