PetaPoco
PetaPoco .NETの簡易O/Rマッパー。
とりあえずPostgreSQLで試してみる。 Getting Started With PetaPoco and Postgres
環境
- Windows XP SP3
- .Net Framework 4
- PostgreSQL 8.4
プログラム作成手順
Databaseの準備
- server: localhost
- database: petapoco
- owner: postgres
Visual Studioでコーディング
プロジェクト作成
コンソールアプリケーションのプロジェクトを作成
- 名前: PetaPocoTest
NuGet Package追加
NuGetすごい便利。
以下のパッケージを追加
- PetaPoco.CORE
- Npgsql
- log4net
PetaPocoを追加すると、勝手にModelsフォルダが生成される。
POCOクラスの作成
いわゆるModel Class。
usersテーブルに合わせて以下のように作成
主キーが複数の場合は
[PetaPoco.PrimaryKey("key1,key2")]
PetaPocoに管理させたくないプロパティには
[PetaPoco.Ignore]
DataManagerクラスの作成
Databaseに接続し、PetaPocoを使用してデータを取得するクラス。
コンストラクタ
DbProviderFactoriesの指定は app.config にも書けるけど、記述が面倒なので引数で渡した。
GetUserBySystemIdメソッド
PetaPoco.Sql.BuilderにてSQLを組み立て。
きっと引数とかはちゃんとエスケープしてくれるのだろう。
テーブル作成時にキチンと指定していないけど、 system_idはユニークな想定なので、Fetchで返されたListの先頭を取得している。
Program.cs
Databaseからuserを取得し、名前をログに出力。
あたりまえだが、実際には GetUserBySystemId から返ってきた値が null かどうかチェックしないといけない。
0 件のコメント:
コメントを投稿