我有一个数据点列表,定义如下:
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
表现不如预期?
默认情况下,类成员和结构成员(包括嵌套的类和结构)的访问级别是私有的。-访问修饰符MSDN
结果,序列化将看不到那些属性。为了序列化它们,需要将它们标记为public。他们还需要有一个公共获取程序,串行器才能读取该属性。
public string Rate { get; set; }
public string Date { get; set; }
public string Number { get; set; }
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句