SORU
10 NİSAN 2013, ÇARŞAMBA


.Net NewtonSoft farklı bir özellik adı için Serisini göster Json

Harici bir partiden alınan aşağıdaki JSON dize var.

{
   "team":[
      {
         "v1":"",
         "attributes":{
            "eighty_min_score":"",
            "home_or_away":"home",
            "score":"22",
            "team_id":"500"
         }
      },
      {
         "v1":"",
         "attributes":{
            "eighty_min_score":"",
            "home_or_away":"away",
            "score":"30",
            "team_id":"600"
         }
      }
   ]
}

Eşleme derslerimi

public class Attributes
{
    public string eighty_min_score { get; set; }
    public string home_or_away { get; set; }
    public string score { get; set; }
    public string team_id { get; set; }
}

public class Team
{
    public string v1 { get; set; }
    public Attributes attributes { get; set; }
}

public class RootObject
{
    public List<Team> team { get; set; }
}

Soru bu ben gibi "Öznitelik sınıfı" ve "öznitelikler alan adı" Takıma sınıf yerine, benim olmak istediğim adında "TeamScore" ve aynı zamanda kaldırmak "_" alan adları ve özel isimler verin.

JsonConvert.DeserializeObject<RootObject>(jsonText);

Bir şekilde değiştirebilirsiniz "" sınıf "TeamScore" eğer dava adı (Takım Sınıf öznitelikleri) değiştirirsem, ama serisini olmaz düzgün ve beni boş veriyor. Öznitelik Bunu nasıl bitireceğim?

Şimdiden teşekkürler.

CEVAP
10 NİSAN 2013, ÇARŞAMBA


Json.NET kod olmalı Json özelliğin adı belirtmek için izin veren bir JsonPropertyAttribute vardır:

public class TeamScore
{
    [JsonProperty("eighty_min_score")]
    public string EightyMinScore { get; set; }
    [JsonProperty("home_or_away")]
    public string HomeOrAway { get; set; }
    [JsonProperty("score ")]
    public string Score { get; set; }
    [JsonProperty("team_id")]
    public string TeamId { get; set; }
}

public class Team
{
    public string v1 { get; set; }
    [JsonProperty("attributes")]
    public TeamScore TeamScores { get; set; }
}

public class RootObject
{
    public List<Team> Team { get; set; }
}

Belgeleri:Serialization Attributes

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • ExcelIsFun

    ExcelIsFun

    16 ŞUBAT 2008
  • Rockstar Games

    Rockstar Gam

    17 ŞUBAT 2006
  • superflyy88

    superflyy88

    8 ŞUBAT 2009