-1

Webリクエストを介してオンラインで取得したJSONデータ文字列があります。文字列を解析してデータをデータ構造にマッピングしようとしていますが、これは機能していません...以前は他のマッピングにも同じ方法を使用しましたが、これまではうまく機能していました。しかし、この特定のケースでは、それは機能していません。

これは、取得されるJSON形式の文字列です。

{"Item":{"FirstName":"Antônio","LastName":"da Silva","CommonName":null,"Height":"175","DateOfBirth":{"Year":"1978","Month":"6","Day":"13"},"PreferredFoot":"Left","ClubId":"1825","LeagueId":"20","NationId":"54","Rating":"70","Attribute1":"53","Attribute2":"68","Attribute3":"74","Attribute4":"73","Attribute5":"55","Attribute6":"56","Rare":"1","ItemType":"PlayerM"}}

これは、文字列を解析する私のクラスです。

public class ParsePlayerInfo
{
    private PlayerClass playerInfo;

    public PlayerClass parse(string stringToParse)
    {
        JavaScriptSerializer serializer = new JavaScriptSerializer();
        if ((stringToParse != null) && (stringToParse.Length > 0))
        {
            this.playerInfo = serializer.Deserialize<PlayerClass>(stringToParse);
        }
        return this.playerInfo;
    }
}

これは私のPlayerクラスです:

public class PlayerClass
{
    public PlayerClass()
    {
        this.Player = new PlayerContents();
    }

    public PlayerContents Player { get; set; }
}

これは私のクラスのplayercontentです:

public class PlayerContents
{
    public PlayerContents()
    {
        string str;
        this.ItemType = str = "";
        this.Rare = str = str;
        this.Attribute6 = str = str;
        this.Attribute5 = str = str;
        this.Attribute4 = str = str;
        this.Attribute3 = str = str;
        this.Attribute2 = str = str;
        this.Attribute1 = str = str;
        this.Rating = str = str;
        this.NationId = str = str;
        this.LeagueId = str = str;
        this.ClubId = str = str;
        this.PreferredFoot = str = str;
        this.Height = str = str;
        this.CommonName = str = str;
        this.FirstName = this.LastName = str;
        this.DateOfBirth = new DOB();
    }

    public string Attribute1 { get; set; }

    public string Attribute2 { get; set; }

    public string Attribute3 { get; set; }

    public string Attribute4 { get; set; }

    public string Attribute5 { get; set; }

    public string Attribute6 { get; set; }

    public string ClubId { get; set; }

    public string CommonName { get; set; }

    public DOB DateOfBirth { get; set; }

    public string FirstName { get; set; }

    public string Height { get; set; }

    public string ItemType { get; set; }

    public string LastName { get; set; }

    public string LeagueId { get; set; }

    public string NationId { get; set; }

    public string PreferredFoot { get; set; }

    public string Rare { get; set; }

    public string Rating { get; set; }
}

編集:

これは私の生年月日クラスです:

public class DOB
{
    public DOB()
    {
        this.Year = this.Month = this.Day;
    }

    public string Day { get; set; }

    public string Month { get; set; }

    public string Year { get; set; }
}

何か案は?

4

1 に答える 1

1

PlayerJSONのプロパティと一致するように、プロパティの名前を変更してみてください。Item

于 2013-02-20T09:59:21.993 に答える