もくじ
→https://qiita.com/tera1707/items/4fda73d86eded283ec4f
json関連記事
https://qiita.com/tera1707/items/4fda73d86eded283ec4f#json
やること
以前の記事で書いた、.NETのDataContractJsonSerializerクラスを使ったjsonデータの読み書きで、jsonデータを格納するためのクラスをVisualStudio2019で簡単に作れるということを知ったのでメモしておく。
やり方
VisualStudio2019のメニューの中にある「jsonをクラスとして貼り付ける」という機能を使う。
簡単にいうと、jsonのデータのテキストをコピーして下記の操作をすると、データ格納のためのclassを手で書かなくても簡単に書いてくれるというもの。
操作は下記の通り。
- まず、読み込みしたいjsonのテキストを
Ctrl+C
でコピーする。(以前の記事のjsonはこちら) - その状態でjsonクラスを貼り付けたい場所にカーソルを当てた状態にし、VisualStudio2019のメニューの[編集] > [形式を選択して貼り付け] > [jsonをクラスとして貼り付ける] を選択する。
これで、カーソルの場所に、クラスが貼り付けられる。貼り付けたものは下記の通り。
※jsonデータの先頭の配列に名前がないので、Rootobject
の下のクラス名がClass1
、そのクラスのプロパティ名がProperty1
になっている。
jsonデータの方にちゃんと名前が書かれていれば、そこにも名前が付けられる。(下の備考を参照。)
備考
以前の記事のjson、本当は下記の形式が正しいらしい。
※jsonは正しくは{で始まり}で終わる。で、topの配列([と]でかこまれたところ)
にも、その書き方だと名前を付けることができる。
これだと、今回の方法で作成したクラスにも、名前がつく。(ここではclass Abc
)
これだと、
{
"abc": [
{
"small": [
123.456,
789.012
],
"large": [
987.654,
654.321
]
},
{
"small": [
111.456,
222.012
],
"large": [
333.654,
444.321
]
}
]
}
こうなる。