MVC 3 生成 - JSON 的破折号属性



我需要使用 MVC 3.0 或更高版本生成如下所示 ASP.NET JSON 对象。一切都很好,除了一些属性有 - "破折号",例如 scale-x。C# 不喜欢这样,有没有办法解决这个问题?

{
    "Data" : [
        {
            "scale-x":{
                "values":["1","2"],
            },
            "scale-y":{
                "line-width":"1px",
                }
            },
            "series" : [
                {
                    "values" : [2, 5]
                }
            ]
        }
    ]
}

谢谢。

将此用作属性的属性:

[DataMember(Name = "scale-x")] 

此外,还必须在 System.Runtime.Serialization.Json 中使用序列化程序。看看这个。

匿名类型不能使用属性,最好的办法是将 Proxy 对象定义为您自己的类型并将其与序列化程序一起使用,然后使用上面的答案。

你可以

使用ClaySharp汉塞尔曼的一个很好的例子就在这里

var person = New.Person();
person["FirstName"] = "Louis";
person["LastName"] = "Dejardin";

最新更新