使用 XmlInclude 或 SoapInclude 特性静态指定非已知的类型。
/// <summary>
/// 请求API后返回的统一格式
/// </summary>
[Serializable]
[XmlInclude(typeof(SampleInfo))]
public class APIResult
{
public string Code { get;set;}
public string Message { get;set;}
public object Data { get;set;}
}
[XmlInclude(typeof(SampleInfo))]
//这个地方的XmlInclude 指定了Data属性值为SampleInfo类的对象 的时候可以正常解析. 否则解析不了. 如果Data属性还可能为其它的自定义类型时. 都需要Include进来.
感觉有点不够智能… 我一般是不建议用xml的. 太烂了. 还不如json好用.
本文探讨了使用XmlInclude特性来指定序列化过程中非已知类型的处理方法,并通过具体代码示例展示了如何实现这一功能。文中提到当对象属性可能包含多种自定义类型时,需逐一进行类型声明,以确保正确解析。

2951

被折叠的 条评论
为什么被折叠?



