2

我正在开发一个 Windows 8 应用程序,其中我需要反序列化包含以“@”符号开头的变量的 JSON 提要。我已经定义了具有与 JSON 中的变量同名的成员的类,然后调用 DataContractJsonSerializer 将 JSON 反序列化为 C# 类。除了以“@”开头的变量名外,这一切都很好。像这样:

public class HotelDetails
{
    public string hotelId;
    public string name;
    public string address1;
...

}

JSON 看起来像这样:

{"@order":"0",
   "hotelId":268026,
   "name":"Monte Cristo",
   "address1":"600 Presidio Avenue",
...

由于我无法定义以“@”开头的 C# 变量,如何反序列化“@order”变量?

4

1 回答 1

3

试试这个?

[DataContract]
public class HotelDetails
{
    [DataMember(Name="@order")]
    public string order;

    [DataMember(Name="hotelId")]    
    public string hotelId;

    [DataMember(Name="name")]  
    public string name;

    [DataMember(Name="address1")]  
    public string address1;
}

不知道这是否有效……还没有测试过。

于 2012-08-29T17:27:01.693 回答