简体   繁体   English

将对象序列化为Json

[英]Serializing an object as Json

I'm attempting to serialize an object as Json. 我正在尝试将对象序列化为Json。 The error returned by the code below is "An instance of type string cannot be assigned to a variable of type JsonResult". 下面的代码返回的错误是“类型字符串的实例不能分配给JsonResult类型的变量”。 Can someone explain what I've done wrong? 谁能解释我做错了什么? I thought serialize() accepts an object and that's what I am passing it. 我以为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;

    }

Assuming this is within a Controller derivative, just do: 假设这是在Controller衍生物中,只需:

return Json(stats);

The rest is handled for you. 其余的都是为您处理的。

Try Serializing your class : 尝试序列化您的课程:

[Serializable()]        
public class SummaryStats
{
...
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM