我正在尝试将对象序列化为Json。下面的代码返回的错误是“类型字符串的实例不能分配给JsonResult类型的变量”。谁能解释我做错了什么?我认为serialize()接受一个对象,这就是我传递它的东西。
public class SummaryStats
{
public int rating_number { get; set; }
public string rating_label { get; set; }
public string rating_view { get; set; }
public int max_stars { get; set; }
public int star_1_rating { get; set; }
public int star_2_rating { get; set; }
public int star_3_rating { get; set; }
public int star_4_rating { get; set; }
public int star_5_rating { get; set; }
}
public JsonResult GetSummaryStats()
{
SummaryStats stats = new SummaryStats();
stats.star_1_rating = 1;
stats.star_2_rating = 1;
stats.star_3_rating = 1;
stats.star_4_rating = 11;
stats.star_5_rating = 20;
JavaScriptSerializer json = new JavaScriptSerializer();
JsonResult output = json.Serialize(stats);
return output;
}
答案 0 :(得分:4)
假设这是Controller
导数,只需执行:
return Json(stats);
其余部分由您处理。
答案 1 :(得分:0)
尝试序列化您的课程:
[Serializable()]
public class SummaryStats
{
...
}