写点什么

PetaPoco:适用于.NET 的微型 ORM

  • 2011-06-24
  • 本文字数:668 字

    阅读完需:约 2 分钟

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 类
  • 部分记录更新

PetaPoco 网站上有针对所有这些功能的详细说明及示例。

在性能方面,PetaPoco仅次于 Dapper,速度只稍逊于手工编码的数据访问层(DAL, Data Access Layer)。

还有一些对初学者会有帮助的教程,它们是位于官网上的系列博文以及一些独立博文教程。此外,由于PetaPoco 是开源项目,因此添加条件来处理如空间数据等特定情况会很容易。

最近,随着许多开源项目的发布,微型ORM 已开始成为一种流行趋势。其他一些众所周知的适用于.NET 的项目有 Dapper Massive 。那些微型 ORM 相对于功能完备的 ORM 而言,会更简单、更高效,微型 ORM 通常要求开发人员手动编写 SQL 语句,而非完全动态生成。它们同样不需要冗长的映射文件,因为对于维护和调试而言,那些映射文件只会让过程变得单调乏味。

查看英文原文: PetaPoco: Micro ORM For .NET

2011-06-24 09:257274
用户头像

发布了 55 篇内容, 共 20.3 次阅读, 收获喜欢 1 次。

关注

评论

发布
暂无评论
发现更多内容

赫夫曼树编码实验报告

我是一个茶壶

数据结构 哈夫曼树 11月月更

Linux yum 命令

芯动大师

yum源 11月月更 Linux系统指令

华为云大数据平台,助力企业数字化转型成效明显

路过的憨憨

《2022开源大数据热力报告》发布,Flink 摘得「流处理」领域热力值 TOP1

Apache Flink

大数据 flink 实时计算

xxj-job服务端架构流程

IT巅峰技术

支持向量机-SVC的模型评估指标

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

制造业要用龙头带动整条产业链发展,阿里云智能制造加速器首次集结

B Impact

【web 开发基础】PHP中的数组 (41)

迷彩

php 数据结构 11月月更 关联数组 索引数组

Python 操作Mysql

度假的小鱼

pymysql 11月月更 Python操作Mysql

融云全球社交泛娱乐洞察,老资格的「游戏社交」还有哪些想象空间

融云 RongCloud

社交 泛娱乐社交

凝心聚力 开源共建 | 统信软件参与成立OpenKunlun开源固件社区

统信软件

开源 开源社区 开源技术

深度学习-浅谈keras的扩展性

AIWeker

深度学习 keras 11月月更

【web 开发基础】PHP 中数组的定义 (42)

迷彩

数据结构 数组 11月月更 数组的定义

开闭原则详细介绍

杨充

单一职责原则详解

杨充

python版本管理工具DVC

AIWeker

人工智能 版本管理 11月月更 dvc

基于 Apache Flink Table Store 的全增量一体实时入湖

Apache Flink

大数据 flink 实时计算

“后 Hadoop 时代”,大数据从业者如何应对新技术趋势带来的挑战?

Apache Flink

大数据 flink 实时计算

详解UDS CAN诊断:什么是UDS(ISO 14229)诊断?

不脱发的程序猿

嵌入式 汽车电子 ISO 14229 CAN诊断 UDS诊断

研发管理如何度量「人效」

feijieppm

项目管理 研发效能 技术管理 文化 & 方法 效能度量

支持向量机-ROC曲线中的概率和阈值

烧灯续昼2002

Python 机器学习 算法 sklearn 11月月更

「Go易错集锦」正确使用defer避免代码重复

Go学堂

golang 程序员 个人成长 defer 11月月更

读《程序是怎样跑起来的》体会

听风go

读书笔记 后端 计算机 计算机原理 读书总结

Python 操作mongodb库

度假的小鱼

mongodb 11月月更 Python 操作mongodb库

详解UDS CAN诊断:DiagnosticSessionControl Service(SID:0X10)

不脱发的程序猿

嵌入式 汽车电子 ISO 14229 UDS诊断 诊断和通信管理功能单元

华为云桌面Workspace,让云上工作更高效!

路过的憨憨

2022-11-29:查找重复的电子邮箱。以下数据中a@b.com是重复的,请写出sql语句。 DROP TABLE IF EXISTS person; CREATE TABLE person (

福大大架构师每日一题

数据库 福大大

一文了解 Go 标准库 strings 常用函数和方法

陈明勇

Go golang 字符串 11月月更 strings

Python 操作Excel(xlrd和XlsxWrite)

度假的小鱼

11月月更 Python xlrd读取Excel Python xlrd

细说值传递、引用传递和地址传递

闫同学

编程语言 计算机基础 11月月更

企业办公新模式,随时随地云上协同!

秃头也爱科技

PetaPoco:适用于.NET的微型ORM_.NET_Roopesh Shenoy_InfoQ精选文章