将Stream对象转换为json对象,然后转换为用户定义的对象

时间:2015-11-26 13:57:50

标签: c# json

我调用一个服务函数,它返回一个流。

该流包含一个具有两个属性(Url和Status)的JSON对象。

我想将此JSON对象转换为名为“Response”的用户定义类。响应类有两个属性Url和Status。

我到目前为止的代码,但不清楚下一步该做什么或者我是否需要实现其他内容:

var response = _service.GetObject("Create");
var serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); 
var jsonObject = serializer.DeserializeObject(response.ReadToEnd());

1 个答案:

答案 0 :(得分:2)

您可以使用带有T泛型类型参数的重载,并在内部强制转换为所需的类型:

Response jsonObject = serializer.DeserializeObject<Response>(response.ReadToEnd());

注意Operator-precedence parser。您应该使用JavaScriptSerializer is deprecated来使用JSON,它具有等效的:

var response = _service.GetObject("Create");
var serializer = JsonConvert.DeserializeObject<Response>(response.ReadToEnd());