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

  • EvilControllers

    EvilControll

    20 Ocak 2008
  • GUN-TIME with Brandon

    GUN-TIME wit

    3 ŞUBAT 2009
  • The Scary Snowman

    The Scary Sn

    1 ŞUBAT 2011

İLGİLİ SORU / CEVAPLAR