開発環境
Visual Studio 2017 (C#)
初めに
自分で作成したAPIであれば、クライアント側のクラスもそのまま流用できますが、他の方(他社)が作成したAPIから返されるJSONの場合は、クラスの作成がめんどくさいと思ったことはないでしょうか?
VisualStudioの機能で簡単にJSONからクラスを作成することができます。
手順
作成したいクラス名をまず追加します。
- 今回は、サンプルなので、SampleJSON.csにしています。
JSONをコピーします。
- APIをコールします。(GETの場合)
- Chromeであれば、ブラウザで表示されるているのでそれをコピー。
- IEであれば、ファイルがダウンロードされるので、それを開いてコピー。
VisualStudioに貼り付け
- 最初に作成したクラス内に張り付ける際に、「
編集
」 > 「形式を選択して貼り付け(S)
」 > 「JSONをクラスとして張り付ける(J)
」を選択します。
- この際、張り付ける場所は、既に作成したクラス名の下に張り付ける良いかもしれません。
SampleJSON.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace WpfApp1
{
class SampleJSON
{
}
// ここに張り付ける
}
- 貼り付けが完了するとクラスが生成されています。
- あとは、
Rootobject
となっているところをクラス名に変更してあれば、完了 - 例としている
class SampleJSON
は削除する。
変更前
class SampleJSON
{
}
// ここに張り付ける
public class Rootobject
{
public Result[] result { get; set; }
}
変更後
public class SampleJSON
{
public Result[] result { get; set; }
}
まとめ
- 自動判断されている部分を若干修正するだけで、ある程度が作成してもらえるので、JSON取得できれば、比較的楽にクラスを生成することができます。
- また、List<T>型としてであれば、RootObjectを削除するだけで済みます。