我想反序序化从HTTP Web请求收到的流体作为响应。但问题是当反序列化必须作为特定类型完成时。我有多个Get,他们有不同的响应(一个返回类型p,其他返回类型q)。我想要一个通用的方法来反序列化任何类型并返回一些通用的东西,当类型caste返回我所需的值时。
答案 0 :(得分:0)
神奇的酱油知道要填充哪种类型。完成后,创建一个通用的反序列化器非常简单:
public object Deserialize( string serialized, Type T ) {
if ( string.IsNullOrEmpty( serialized ) ) {
return null;
}
XmlSerializer xs = new XmlSerializer( T );
MemoryStream ms = new MemoryStream( StringToBytes( s ) ?? new byte[0] );
XmlTextWriter tw = new XmlTextWriter( ms, Encoding.UTF8 );
return xs.Deserialize( ms );
}
将其转换为通用方法也很容易。