PetaPoco - 用于.NET和Mono平臺的微型ORM框架

jopen 11年前發布 | 19K 次閱讀 PetaPoco 持久層框架

PetaPoco是一款適用于.NET應用程序的輕型對象關系映射器(ORM,  Object Relational Mapper)。與那些功能完備的ORM(如NHibernate或Entity Framework)不同的是,PetaPoco更注重易用性和性能,而非豐富的功能。使用PetaPoco只需要引入一個C#文件,可以使用強類型的 POCO(Plain Old CLR Object),并支持使用T4模板生成的類等等。

PetaPoco最讓人感興趣的功能包括:

  • 可與SQL Server、SQL Server CE、MySQL、PostgreSQL以及Oracle數據庫協同工作。
  • 包含針對Insert/Delete/Update/Save以及IsNew的多個輔助方法。
  • 支持簡單事務
  • 對于翻頁請求會自動計算總記錄數,并獲取特定分頁。
  • 支持參數替換,能夠從對象屬性中抓取命名參數(named parameters)
  • 包括一個消耗資源很少的SQL Builder類
  • 部分記錄更新
  • 包括T4 Templates,可以用于基于數據庫結構生成POCO類。

在PetaPoco網站上有針對所有這些功能的詳細說明及示例。

在性能方面,PetaPoco僅次于Dapper,速度只稍遜于手工編碼的數據訪問層(DAL, Data Access Layer)。

還有一些對初學者會有幫助的教程,它們是位于官網上的系列博文以及一些獨立博文教程。此外,由于PetaPoco是開源項目,因此添加條件來處理如空間數據等特定情況會很容易。

最近,隨著許多開源項目的發布,微型ORM已開始成為一種流行趨勢。其他一些眾所周知的適用于.NET的項目有Dapper和Massive。那些微型ORM相對于功能完備的ORM而言,會更簡單、更高效,微型ORM通常要求開發人員手動編寫SQL語句,而非完全動態生成。它們同樣不需要冗長的映射文件,因為對于維護和調試而言,那些映射文件只會讓過程變得單調乏味。

項目主頁:http://www.baiduhome.net/lib/view/home/1358752040849

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!