2

字符串结果如下:

{ "1": "something" }

string result = "{ \"1\"' : \"somestring\"}";

public class JsonData
{
    private string _1;

    public string 1 { get { return _1; } set { _1 = value; } }

    public JsonData()
    {
    }
}

JsonData data = Newtonsoft.Json.JsonConvert.DeserializeObject<JsonData >(result);

我想反序列化String但 JsonData 定义是错误的。这有什么问题?

4

1 回答 1

2

您的代码无法编译,因为标识符不能以数字开头。

您可以使用JsonPropertyAttribute来引用1Json 中的属性。

public class JsonData
{
    [JsonProperty("1")]
    public string One { get; set; }
}

用法:

var data = @"{ ""1"" : ""something"" }";

var result = JsonConvert.DeserializeObject<JsonData>(data);
于 2013-06-26T01:37:06.037 回答