我正在开发一个与服务器通信大量数据的项目。此数据采用json格式。我们最终创建了许多虚拟对象来解析json数据。这导致有很多只包含类成员的类。有没有更好的做事方式?
感谢
答案 0 :(得分:0)
假设您正在使用NewtonSoft的JSON解析器或类似的东西,那么您有几个选择。这里通常的用例是反序列化为命名类型,因此:
var parsedMessage = JsonConvert.DeserializeObject<Message>(content.AsString());
如果您希望收到并希望避免的每种不同的JSON消息类型有多种类型,则可以执行以下操作:
var parsedMessage = JsonConvert.DeserializeObject<dynamic>(content.AsString());
这将为您提供一个可以检查的动态对象,并且还应该在给定其他Json库的情况下工作。或者,NetwtonSoft还提供以下方法:
public static T DeserializeAnonymousType<T>(string value, T anonymousTypeObject);
这将允许您反序列化为匿名类型的对象而不是动态对象。