みんなのちからになりたい

コピペでブログラムつくっていきたい

C#でYAMLを使う

DBの接続先が複数あってそれを設定ファイルに書くことになったんだけど、1年位.NETまともにさわってなかったので最近のトレンドとしてどんな感じのフォーマットで保存してるのか調べてみたけど、たいていデフォルトのapp.exe.configに書くみたいな感じになってて、これでもいいんだけど開発中とか直書きするためあのフォーマットだと辛みがあるのでYAMLで書くことにした。

YAML使えるライブラリ

何個かあるけどググってもたいていは下記に落ち着く。

ぱっと見、さらっと書くだけだとYamlSerializerがすごくいいのだけど、2013年からメンテされてなく、2人がForkしてメンテしてるっぽいんだけどそれでも2014年の頭からメンテしてないので、なんかあったときのやばさの担保がほしいのでYamlDotNetを使うことにした。

ちなみにYamlSerializerのFork先はこの2つ。

YamlDotNetのインストール

まえはパッケージ3つくらい入れる必要があったようなのだけど、いまはYamlDotNet1つだけでいい。
NuGetで普通に入れることができる。

PM> Install-Package YamlDotNet

使い方

Documentationみればわかる。
こういっちゃ身も蓋もないんだけど、ググって出てくるサンプルはパッケージ3つくらい入れる時代の古いのが多くてクラスやメソッドが微妙に変わってたりして実際あまり参考にならない。
なので普通にDocumentationみて書いたほうがちゃんと動く。

たいてい読んで書ければいいはずなので、この辺をみればOK。

SerializerとDeserializeにStreamを渡せばいいのでファイルのStreamを渡してあげればよい。

結論

公式のドキュメントを読もう。

全然関係ないけどJSFiddleはお世話になってたけど.NETFiddleってのあるの知れてすごいよかった。