2016-08-17 4 views
1

このJSONデータを表すためにC#クラス定義がどのように見えますか?JSONデータを表すC#クラス

{ 
     "accountId": "101", 
     "website": "www.example.com", 
     "alternateWebsites": [ 
      { 
      "website": "site2.example.com" 
      } 
     ], 
     "email": "[email protected]", 
     "alternateEmails": [ 
      { 
      "email": "[email protected]" 
      } 
     ], 
     "address": { 
      "street": "234 Main Street", 
      "city": "San Diego", 
      "postalCode": "92101", 
      "state": "CA" 
     }, 
     "rankingKeywords": 
     [{ 
      "keyword": "Coffee", 
      "localArea": "Sacramento, CA" 
      }] 
} 
+6

VSはあなたのためにこれを行います。 JSONをクリップボードにコピーします。 **編集メニュー - >形式を選択して貼り付け - > JSONをクラスとして貼り付ける** – Plutonix

答えて

4

は、あなたは、あなたのJSONに貼り付けるこのhttp://jsonutils.com/

のようなサイトを使用することができますし、それはあなたのためのクラスを作成します。あなたのJSONの結果は...

public class AlternateWebsite 
{ 
    public string website { get; set; } 
} 

public class AlternateEmail 
{ 
    public string email { get; set; } 
} 

public class Address 
{ 
    public string street { get; set; } 
    public string city { get; set; } 
    public string postalCode { get; set; } 
    public string state { get; set; } 
} 

public class RankingKeyword 
{ 
    public string keyword { get; set; } 
    public string localArea { get; set; } 
} 

public class Root 
{ 
    public string accountId { get; set; } 
    public string website { get; set; } 
    public IList<AlternateWebsite> alternateWebsites { get; set; } 
    public string email { get; set; } 
    public IList<AlternateEmail> alternateEmails { get; set; } 
    public Address address { get; set; } 
    public IList<RankingKeyword> rankingKeywords { get; set; } 
} 
3

これはhttp://json2csharp.com/のようなサービスで変換できます。 JSONを入力すると、C#モデルクラスが吐き出されます。次に、それらをクラスとして追加するか、目的に応じてEntity Frameworkをプロジェクトに追加します。

C#版:

public class AlternateWebsite 
    { 
     public string website { get; set; } 
    } 

public class AlternateEmail 
{ 
    public string email { get; set; } 
} 

public class Address 
{ 
    public string street { get; set; } 
    public string city { get; set; } 
    public string postalCode { get; set; } 
    public string state { get; set; } 
} 

public class RankingKeyword 
{ 
    public string keyword { get; set; } 
    public string localArea { get; set; } 
} 



public class RootObject 
{ 
    public string accountId { get; set; } 
    public string website { get; set; } 
    public List<AlternateWebsite> alternateWebsites { get; set; } 
    public string email { get; set; } 
    public List<AlternateEmail> alternateEmails { get; set; } 
    public Address address { get; set; } 
    public List<RankingKeyword> rankingKeywords { get; set; } 
}