使用newtonsoft或restsharp反序列化json字符串
我有一个字符串,它来自一个Json格式的数据库。
我试图用以下方法反序列化它:
RestSharp.Deserializers.JsonDeserializer deserial = new JsonDeserializer(); var x = deserial .Deserialize(myStringFromDB)
但.Deserialize
函数需要一个IRestResponse
有没有办法使用RestSharp来反序列化原始字符串?
我也有这个问题,我使用Newtonsoft.Json
解决它。
包括这些名称空间:
using Newtonsoft.Json; using RestSharp;
并尝试这样的事情:
return JsonConvert.DeserializeObject(response.Content);
在response.Content
,您将获得原始结果,因此只需将此字符串反序列化为json对象。 案例中的T
是您需要反序列化的类型。 样品:
var customerDto = JsonConvert.DeserializeObject(response.Content);
如果您想避免使用额外的库,请尝试以下方法:
RestSharp.RestResponse response = new RestSharp.RestResponse(); response.Content = myStringFromDB; RestSharp.Deserializers.JsonDeserializer deserial = new JsonDeserializer(); Customer x = deserial.Deserialize(response);
注意事项适用 – 未经过广泛测试 – 但似乎运作良好。