Class 序列化时属性显示名称 class

Class Properties display name when serialize class

我有一个class

public class MyClass
{
    public string v1 { set; get; }
    public string v2 { set; get; }
    public string v3 { set; get; }
    public string i1 { set; get; }
    public string i2 { set; get; }
    public string i3 { set; get; }
    public string error { set; get; }
    public string date { set; get; }
}

当我序列化 class

 MyClass meter = new MyClass();
 var json = new JavaScriptSerializer().Serialize(meter);

我得到

{
    "v1":"2342",
    "v2":"2336",
    "v3":"2332",
    "i1":"38.90",
    "i2":"42.21",
    "i3":"30.87",
    "error":"",
    "date":"26/02/2015 08:16:14"
}

如何更改每个成员的显示名称(如 [ScriptIgnore])

我试过 [Display(Name = "myname")]

有两种方法

1) 使用Newtonsoft.Json 加上属性 名称即可显示 有这种方式

 [JsonProperty(PropertyName = "owner")]
 public string Owner { get; set; }

2) 如果您坚持使用 javascriptserializer,那么这里是如何执行此操作的代码。 JavaScriptSerializer.Deserialize - how to change field names

我觉得你应该用Newtonsoft为什么要重新发明轮子??