2017-11-03 10 views
-1

現在、私はXamarin.Formsでモバイルアプリケーションを作成しています。私のAPIからの応答は、1つの文字列出力ではなく、別々の変数で行う必要があります。JsonのオブジェクトをDeserializeして配列Cに返す#

マイAPI出力:

{"error":false,"user":{"id":3,"email":"[email protected]","vorname":"root","nachname":"toor","wka":"wka1"}} 

私は応答をデシリアライズするNewtonsoftを使用していると私は私がpublic bool error { get; set; }をプリントアウトすることができますが、他のVARSが働いていないため、問題が"user":{...}の背後にある中括弧だと思います。

class JsonContent 
    { 
     public bool error { get; set; } 
     public int id { get; set; } 
     public string email { get; set; } 
     public string vorname { get; set; } 
     public string nachname { get; set; } 
     public string wka { get; set; } 
    } 

テスト:あなたはJSONのために持って

JsonContent j = JsonConvert.DeserializeObject<JsonContent>(response.Content); 
bool pout = j.error; //output: false 

JsonContent j = JsonConvert.DeserializeObject<JsonContent>(response.Content); 
int pout = j.id; //output: 0 
+2

クラスが間違っています。 JSONをクリップボードにコピーし、**メニュー編集** ** **貼り付け特別** ** ** JSONをクラスとして貼り付け**。 [ask]を読んで[ツアー]を受けてください。 – Plutonix

+1

ユーザーは応答内のオブジェクトであり、idは基本応答オブジェクトではなくユーザーオブジェクトのプロパティです。 http://json2csharp.comのようなツールを使用してデータの適切なC#クラスを生成する – Jason

+0

データモデルに「user」というBoolと辞書という2つのプロパティしかありません。 –

答えて

0

をあなたのJSONをデシリアライズすることができ、http://json2csharp.com。それは大きなjsonのモデルを取得しなければならないときに役立ちます。

public class User 
{ 
    public int id { get; set; } 
    public string email { get; set; } 
    public string vorname { get; set; } 
    public string nachname { get; set; } 
    public string wka { get; set; } 
} 

public class Example 
{ 
    public bool error { get; set; } 
    public User user { get; set; } 
} 
3

C#クラスが正しくありません。

それは

public class User 
{ 
    public int id { get; set; } 
    public string email { get; set; } 
    public string vorname { get; set; } 
    public string nachname { get; set; } 
    public string wka { get; set; } 
} 

public class JsonContent 
{ 
    public bool error { get; set; } 
    public User user { get; set; } 
} 

する必要があり、その後、あなたはすなわちhttps://jsonutils.com、モデルを取得するために、C#のコンバータにいくつかのJSONを使用することができ、あなたのC#のオブジェクトに

関連する問題