メインメニューを開く

差分

Fluent NHibernate/フルーエントマッピング

1,569 バイト追加, 2012年7月12日 (木) 09:07
=== エンティティを作る ===
まずエンティティとなるクラスを作る。
 
[[アプリケーション]]を作る[[プログラマー]]が直接操作するのはエンティティクラスとなる。
この[[アプリケーション]]を作る[[プログラマー]]がエンティティクラスをゴニョゴニョすることで、一般的なSELECT/UPDATE/INSERT/DELETE(俗にいう[[CRUD]])などのDB操作を実現することになる。
プロジェクトの中に「Entities」というディレクトリを作り、その中に格納しておくとわかりやすいと思う。
次にマッピングを記述するクラスを作る。
マッピングクラスはClassMap<>クラスを継承して作る。
 
マッピングクラスは、Fluent NHibernateがエンティティがどういう設定かを記述するクラスであり、エンティティを利用する[[プログラマー]]が直接参照するようなものではない。
[[Fluent NHibernate]]の99%は、このマッピングクラスの記述方法を覚えることだと思われる。
=== アプリを作る ===
次に実際にアプリケーションを作る。
 
Mappingの中身がFluentMappingsとなっているのが特徴。
オートマッピングの場合はAutoMappingsとなっていた部分である。
<source lang="csharp">
</source>
== 応用 基本 ===== Id ===プライマリーキーとなる。 === Map ===プロパティとマッピングする。 === References ===多対1(many to one)を表す。 === HasMany ===1対多(one to many)を表す。 === HasManyToMany ===多対多(many to many)を表す。 === HasOne ===1対1(one to one)を表す。 == 応用、その他 ==
* [[Fluent NHibernate/フルーエントマッピング/自己参照]]
* [[Fluent NHibernate/フルーエントマッピング/複合主キー]]
* [[Fluent NHibernate/フルーエントマッピング/オートインクリメント]]
* [[Fluent NHibernate/フルーエントマッピング/テキスト長]]
* [[Fluent NHibernate/フルーエントマッピング/日付型]]
* [[Fluent NHibernate/フルーエントマッピング/列挙型]]
* [[Fluent NHibernate/フルーエントマッピング/NOT NULL]]
<!--
</source>
-->
 
== 関連項目 ==
* [[Fluent NHibernate]]
匿名利用者