ごった煮

色々な事を書いてます

OData用のPocoを生成する(C#)

ODataを使用する際、OData用ライブラリを使う場合などでPocoがあると何かと便利なので、Pocoを生成する簡単な方法についてメモを残します。

やってみる

ツールを入れる

odata2pocoという便利なツールがOSSで公開されているのでこちらを入れます。 dotnetコマンドが入っている前提なので、先にdotnetコマンドを入れておきましょう。(dotnetコマンドを使わない方法も一応あります。)

dotnetコマンド

dotnet tool install --global OData2Poco.dotnet.o2pgen  

何もエラーが出なければインストール完了です。

使ってみる

基本的なコマンドは、

dotnet o2pgen

です。

認証があるURLに対してのコマンドは、以下のような感じ

dotnet o2pgen -r "Url" -u "ユーザID" -p "パスワード" -o "認証方式"

認証方式は、none、basic、token、oauth2の4種類、デフォルトはnoneなので、basic認証が掛かっている対象に対してユーザIDとパスワードを設定しただけで 認証方式を指定しないと認証エラーが返ってくるので注意が必要です。

これを実行するとpoco.csというPocoが生成されます。 ファイル名を指定する場合などは、以下のような感じです。

dotnet o2pgen -r "Url" -f "ファイル名" -x "メタデータファイル名" -u "ユーザ名" -p "パスワード" -o "認証方式"

まとめ

生のODataもいいけどPocoがあると便利ですよね