2017-02-17 7 views
0

私はJson StringをC#のObjectに変換したいと思っています。私はいくつかのコードで数回試してみましたが、それは私に解析エラーを与えました。以下を参照してください。複雑なjson文字列をオブジェクトCに変換する方法#

{ 
"Test Name1": [{ 
    "scores": [{ 
     "score": "-0.00", 
     "ethnicity": "Asian" 
    }, 
    { 
     "score": "0.00", 
     "ethnicity": "GreaterAfrican" 
    }, 
    { 
     "score": "1.00", 
     "ethnicity": "GreaterEuropean" 
    }], 
    "best": "European" 
}, 
{ 
    "scores": [{ 
     "score": "1.00", 
     "ethnicity": "British" 
    }, 
    { 
     "score": "0.00", 
     "ethnicity": "Jewish" 
    }, 
    { 
     "score": "-0.00", 
     "ethnicity": "WestEuropean" 
    }, 
    { 
     "score": "0.00", 
     "ethnicity": "EastEuropean" 
    }], 
    "best": "British" 
}], 
"Test Name2": [{ 
    "scores": [{ 
     "score": "-0.00", 
     "ethnicity": "Asian" 
    }, 
    { 
     "score": "0.00", 
     "ethnicity": "GreaterAfrican" 
    }, 
    { 
     "score": "1.00", 
     "ethnicity": "GreaterEuropean" 
    }], 
    "best": "GreaterEuropean" 
}, 
{ 
    "scores": [{ 
     "score": "-5.95", 
     "ethnicity": "British" 
    }, 
    { 
     "score": "6.95", 
     "ethnicity": "Jewish" 
    }, 
    { 
     "score": "0.00", 
     "ethnicity": "WestEuropean" 
    }, 
    { 
     "score": "-0.00", 
     "ethnicity": "EastEuropean" 
    }], 
    "best": "Jewish" 
}] 

}

私は以下のコードをしようとしています。

var Result = client.PostAsync(APIURL, httpContent).Result; 
if(Result.IsSuccessStatusCode) 
    { 
     var responseStr = Result.Content.ReadAsStringAsync();  
        dynamic jsonObject = JsonConvert.DeserializeObject<object>(responseStr.ToString());       
    } 

しかしこれをオブジェクトに変換することはできません。どのようにそれを行うことができますか?

+3

表示されるエラーメッセージは何ですか? – maniak1982

+0

Visual Studioを使用していますか? – jcc

+0

非同期呼び出しを待つ必要があります。または、コンテンツを読み取る前に次の行を実行します。 – Crowcoder

答えて

2

タスクの戻り値ではなく、タスクの「tostring」表現を逆シリアル化しようとしています。

これを試してみてください:

if(Result.IsSuccessStatusCode) 
{ 
    var responseStr = await Result.Content.ReadAsStringAsync();  
    dynamic jsonObject = JsonConvert.DeserializeObject<object>(responseStr);       
} 
関連する問題