为什么我的JavaScriptSerializer返回空json对象
本文关键字:json 对象 返回 我的 JavaScriptSerializer 为什么 | 更新日期: 2023-09-27 18:15:09
我有一个数据点列表,定义如下:
public class Point {
string Rate;
string Date;
string Number;
public Point(string Rate, string Date, string Number)
{
this.Rate = Rate;
this.Date = Date;
this.Number = Number;
}
}
然后在我的代码中,我有:
List<Point> points = populatedList;
JavaScriptSerializer javaScriptSerializer = new JavaScriptSerializer();
string text = javaScriptSerializer.Serialize(points);
System.IO.File.WriteAllText(@"C:'Users'Public'WriteText.txt", text);
当我去查看"WriteText.txt"时,然而,我所拥有的只是一堆空括号:{}, {}, {} ...
我也尝试过只用一点来做这件事,然后我只剩下一对匹配的括号。然后我尝试单独序列化一个字符串对象,效果很好。为什么JavaScriptSerializer
的行为不符合预期?
类成员和结构成员(包括嵌套类和结构)的访问级别默认为private。- MSDN
这样做的结果是,序列化将看不到这些属性。为了使它们序列化,它们需要被标记为public。它们还需要有一个公共getter,以便序列化器读取属性。
public string Rate { get; set; }
public string Date { get; set; }
public string Number { get; set; }