Json字符串到对象C#语法

时间:2014-06-03 10:34:19

标签: c# .net json

我是.net的新手,我正在尝试将JSON字符串转换为对象。我写了下面的代码,但它给了我语法错误:

JavaScriptSerializer JSS = new JavaScriptSerializer();
T obj = JSS.Deserialize<T>(String);

它无法识别代码中的T。请帮忙。

我不想创建任何自定义类。 我可以从json字符串中获取JSON,我可以使用它来查找给定键的值

3 个答案:

答案 0 :(得分:1)

您没有在任何地方指定T。此代码应位于通用类或方法中,其中T被指定为泛型类型参数。

答案 1 :(得分:1)

按字面意思理解你的代码:

JavaScriptSerializer JSS = new JavaScriptSerializer();
T obj = JSS.Deserialize<T>(String);

String是一种类型,而不是一种对象。您需要传入要反序列化的变量:

public class Person
{
   public int Id { get;set; }
   public string Name { get;set; }
}

// Then somewhere else

string json = @"{ ""Id"": 10, ""Name"": ""Jeremy Vines"" }";

JavaScriptSerializer JSS = new JavaScriptSerializer();
Person obj = JSS.Deserialize<Person>(json);

Console.WriteLine("Id: {0}, Name: {1}", obj.Id, obj.Name);

答案 2 :(得分:0)

尝试使用您希望获得的对象类型替换T.如果你不知道,甚至反对。