Fluent nHibernate,簡化nHibernate工作量的好工具。
nHibernate相信用C#跟數據庫打交道的多少知道一些,用過nHibernate的對其中nHibernate的XML配置文件的繁雜應該深有印象。Fluent nHibernate就是為簡化nHibernate的配置而誕生,使用Fluent nHibernate可以使nHibernate的配置工作用C#代碼完成,而無需用實體的XML文件,極大的方便是用
nHibernate的工作量。
由於項目需求,最近要學習並使用Flunent Nhibernate與Oracle。邊學習邊開發,遇到很多問題,這裏隻做總結,每日修正。希望對像我一樣的入門菜鳥兄弟有點點幫助。當然,現在我的博客訪問量少的可憐。沒關係,我執著的寫,持之以恒的寫,記錄我的學習之路,記錄我的青春。我可以渺小,但要過的精彩。
第一,首先,Nhibernate與Flunent Nhibernate是兩種第三方工具。應該說Flunent Nhibernate以Nhibernate為基礎,提供了更為方便的Map文件。這些好處可以去官網看一下。雖然英文,但大體還是能看明白,隻可惜我沒找到係統的幫助文檔。
我的開發是以寫好Map 文件,再推出數據表的模式開發的。我想,這應該是比較規範的麵向對象開發思想吧。可能,開始時我們沒有感覺到使用Nhibernate的高效性。反而覺得在繞彎路。但仔細考慮下,減少sql語句的拚寫,提高數據庫訪問的效率不一直是我們開發人員所追求的嗎。應該相信對Nhibernate的應用是有利的。Flunent Nhibernate的更接近.net編碼方式。標準的語法,強大的代碼提示。上手應該很快。
查了很多資料,對Flunent Nhibernate的核心Map文件作詳細介紹的並不多。有個係統的學習之旅這裏推薦一下http://www.cnblogs.com/inday/archive/2009/08/04/Study-Fluent-NHibernate-Start.html
我也試著記錄一係列自己的心得,可能不係統,不清晰。這次的筆記叢Map文件的屬性說起。
首先,寫好類之後,建一個與類名一致,外加Map的文件,例如:User.cs對應一個UserMap.cs。
該文件的書寫方式,明天補充,今天先說其中的屬性方法
1.Table:對數據表命名,例如:Table("User");不使用該方法時,默認為類名。
2.屬性列定義Map(u=>u.username);這裏數據表中的屬性列默認名字為類的屬性,如這裏為username。我們也可以這樣定義為其他的名字。Map(u=>u.username,"UserID");
3.像一些數據庫中的特別屬性字段,可以這樣定義Map(o=>o.Remarks).CustomSqltype(Nclob);定義為Oracle數據庫中的NCLOB類型。
140.5M / 09-05
76.4M / 03-25
55M / 06-05
237.9M / 04-13
900.9M / 03-02
96.2M / 07-06
311.2M / 07-06
335M / 07-06
200M / 07-06
413.8M / 07-06
768.9M / 08-19
484.7M / 09-27
165.4M / 09-05
131.8M / 04-13
195.6M / 03-03
45.6M / 09-08
665.2M / 07-06
2.84G / 07-06
93M / 07-06
338.3M / 07-06
892.4M / 08-18
312M / 07-30
1.38G / 07-26
109.8M / 06-03
142M / 01-08
1.2M / 11-23
548.8M / 04-13
1.6M / 04-13
1.48G / 03-18
646.6M / 03-03
404M / 08-18
110.5M / 09-05
33.4M / 09-05
60M / 04-29
254M / 04-25
659M / 04-23
1M / 12-26
253.4M / 12-08
253M / 12-08
1.19G / 11-16
115.9M / 08-19
488.3M / 06-04
369M / 09-22
181.5M / 09-22
201.2M / 09-05
248.9M / 12-08
248.9M / 12-08
100.6M / 03-06
148.9M / 03-06
1.12G / 07-06
126.7M / 02-04
1.76G / 09-22
1.92G / 04-17
201.5M / 04-13
7.31G / 07-01
94.3M / 07-06
2.48G / 07-06
7.63G / 07-06
1M / 07-06
778.1M / 07-06
1.30G / 08-19
72M / 07-06
548.7M / 07-06
1.00G / 07-06
9.13G / 07-06
126.2M / 07-06
72M / 07-06
105.1M / 07-06
132M / 07-06
132M / 07-06