#c# #json
#c# #json
Вопрос:
Я пытаюсь сериализовать объект как Json. Ошибка, возвращаемая приведенным ниже кодом: «Экземпляр типа string не может быть назначен переменной типа 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;
}
Ответ №1:
Предполагая, что это внутри Controller
производной, просто сделайте:
return Json(stats);
Остальное обрабатывается за вас.
Ответ №2:
Попробуйте сериализовать свой класс :
[Serializable()]
public class SummaryStats
{
...
}