我能够将字符串化的Javascript对象返回给我的C#项目。字符串如下所示:
{ “QuestionId”: “”, “QuestionTitle”: “HIU”, “OriginalURL”: “”, “OriginalTitle”: “”, “ChronicID”: “”}
如何在C#中使用这些参数轻松将其转换为Object?
更新:我搞定了。请参阅以下代码。
SearchQuery search = (SearchQuery)JsonConvert.DeserializeObject(@filterParams, typeof(SearchQuery));
答案 0 :(得分:8)
使用Json.Net
dynamic dynObj = JsonConvert.DeserializeObject(jsonstr);
Console.WriteLine("{0} {1}", dynObj.QuestionId, dynObj.QuestionTitle);
JavaScriptSerializer serializer = new JavaScriptSerializer();
var obj = serializer.Deserialize<Dictionary<string,object>>(jsonstr);
Console.WriteLine("{0} {1}", obj["QuestionId"], obj["QuestionTitle"]);
修改
string jsonstr = @"{""QuestionId"":""123"",""QuestionTitle"":""hiu"",""OriginalURL"":"""",""OriginalTitle"":"""",""ChronicID"":""""}";
答案 1 :(得分:2)
您需要一个.NET的JSON库。 JSON代表 J ava S cript O bject N otation,它基本上就是你在问题中粘贴的内容。
我个人喜欢 Json.NET 。
仅供参考,从您的问题中显示对象的“更漂亮”方式是:
{ QuestionId: '', QuestionTitle: 'hiu', OriginalURL: '', OriginalTitle: '', ChronicID: '' }
答案 2 :(得分:2)
您正在寻找JSON解析器