Open Map WeatherのAPIで天気予報を取得するためには無料ライセンス登録が必要です。ライセンス取得後、APIが使用可能になるまで時間がかかる場合があります。すぐにうまくいかないときはしばらく待ちましょう。

ベースとなるURLは以下の通りです。

リクエストする際にはURLの末尾にパラメータを追加してください。

東京の天気予報を取得するには

東京のIDは1850147です。

レスポンスは JSON で返ってきます。

ではさっそくやってみましょう。

ボタンをおすとテキストが取得できていることが確認できます。

つぎに取得されたJsonをもとにリストビューに天気予報を表示させてみることにしましょう。

デザイナでListViewを追加します。そして初期化のためのInitListView()メソッドと新しいアイテムを追加するためのAddItem(string dateTime, string weather, string temp, string humidity, string pressure, string wind)メソッドを定義します。リストビューには日時(3時間毎)、天気、気温、湿度、気圧、風速を表示させます。それ以外にもデータは取得できますが、きりがないのでこれくらいにしておきます。

Newtonsoft.Jsonをインストールし、

を実行します。

WeatherResultクラスと関連するクラスは以下のとおりです。

ボタンがおされたら以下の処理を実行します。

GetWeather(string str)メソッドはWeatherSummary.Weather[].Mainを天気に、WindDirect(double d)メソッドはWeatherSummary.Wind.Degを方角に変換するためのメソッドです。