我想反序列化从HTTP Web请求接收到的流体作为响应。但问题是,当反序列化必须作为特定类型完成。我有多个Get的,他们有不同的回应(一个返回类型p,其他返回类型q)。我想有一个通用的方法,可以对任何类型进行反序列化,并返回给我一些概括性的东西,当类型种姓会返回我所需的值时。http响应返回类型反序列化到一个特定类型
0
A
回答
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);
}
它也很容易把它变成一个通用的方法。
+0
那么我没有其他的选择来找出返回的类型。所以我做了什么是我添加了一个HTTP头('ResponseType'),它携带在服务端的响应中返回的对象的类型。在客户端,我刚刚检查了响应头并相应地反序列化了它。 – Rain
相关问题
- 1. Json反序列化流返回类型
- 2. 序列化返回类型
- 3. 反序列化一个通用类型
- 4. Newtonsoft Json的反序列化到特定类型的
- 5. 反序列化JSON数组到特定类型的
- 6. Linq返回特定类型
- 7. 反序列化JSON时确定类型
- 8. 反序列化移动到另一个程序集的类型
- 9. 如何反序列化或模仿的响应类型
- 10. 泛型类返回特定的一组取决于类型
- 11. .NET反序列化 - 返回多种类型
- 12. C++类函数的返回类型定义,返回一个类
- 13. 反序列化一个类型为委托的字段的类
- 14. 从列表中返回一个特定类型
- 15. 反序列化泛型(但可序列化)类型
- 16. Newtonsoft JSON.NET反序列化到一个类型的对象
- 17. 杰克逊 - 反序列化到一个不同的类型
- 18. 如何在一个Http响应中向多个MIME类型的数据返回多个MIME类型
- 19. 序列化类型定义?
- 20. 将一个匿名类型反序列化为一个动态
- 21. 反映自定义类型返回null
- 22. 序列化一个C#对象为特定类型
- 23. 爪哇GSON - 序列化&反序列化类泛型类型为List
- 24. Json.net无法反序列化一个复杂类型的列表
- 25. 未指定类型的返回类型
- 26. 反序列化动态json类型
- 27. 反序列化派生类型
- 28. 反序列化JSON - 错误类型
- 29. DataContractSerializer的反序列化已知类型
- 30. 反序列化多种类型与GSON
我可以尝试catch块,并试图反序列化它,但这将是一个糟糕的编程习惯。我还有什么其他选择? – Rain