报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

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:257171
用户头像

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

关注

评论

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

论文分享:「FED BN」使用LOCAL BATCH NORMALIZATION方法解决Non-iid问题

隐语SecretFlow

密码学和算法 机器学习/深度学习

双屏协作更高效,华硕灵耀X 双屏Pro 2022创作体验再升级

科技热闻

进行知识管理的好处有哪些?

Geek_da0866

阿里云张新涛:支持沉浸式体验应用快速落地,阿里云云XR平台发布

阿里云弹性计算

视觉计算 云XR平台 沉浸式体验 GPU实例

【React源码系列】全网最详细的React异常捕获及处理机制

爱切图的木子老师

前端 React react源码 异常捕获

OpenHarmony——内核对象队列之算法详解(下)

OpenHarmony开发者

OpenHarmony

毕昇编译器优化:Lazy Code Motion

华为云开发者联盟

云计算 后端 表达式 毕昇编译器

Linux进阶切换用户

flow

8月月更

Linux进阶删除用户组

flow

8月月更

对数学直观、感性的认知是理解数学、喜爱数学的必经之路,这本书做到了!

图灵教育

高中数学

艺术与科技的狂欢,云端XR支撑阿那亚2022砂之盒沉浸艺术季

阿里云弹性计算

vr 视觉计算 云XR平台 沉浸式体验 GPU实例

作为开发人员,您应该熟悉的 7 个 JavaScript 概念

flow

8月月更

Wallys/QCA 9880/802.11ac Mini PCIe Wi-Fi Module, Dual Band, 2,4GHz / 5GHz advanced edition

wallys-wifi6

不是吧,连公司里的卷王写代码都复制粘贴,这合理?

Liam

前端 代码 手写代码 代码阅读 写好代码

winpe工具WEPE微PE工具箱

肖飞码字

windows 操作系统

视频是主动学习吗?

FunTester

传统数据中台又贵又复杂?何不试一试永久免费的下一代数据中台

雨果

数据中台 DaaS数据即服务

MySQL数据指令

武师叔

8月月更

分贝通SAAS企业大数据体系建设经验分享

阿里云大数据AI技术

大数据

基于设计稿识别的可视化低代码系统实践

Shopee技术团队

前端 设计 低代码

开源一夏 | Mysql开启ssl加密协议及Java客户端配置操作指南

六月的雨在InfoQ

MySQL 开源 SSL证书 SSL 连接 8月月更

Linux进阶删除用户

flow

8月月更

说了半天跨平台,今儿咱就来跨跨!(完结篇)——Kubernetes上手实践

为自己带盐

Docker WSL2 k8s入门 签约计划第三季 8月月更

Linux进阶显示用户UID和GID

flow

8月月更

Linux进阶新增用户组

flow

8月月更

怎样选择一个好的SaaS知识库工具?

Geek_da0866

叮~点击定制你的数字车手证,参与挑战吉尼斯世界纪录™ 称号

亚马逊云科技 (Amazon Web Services)

Amaozn DeepRacer

开源一夏 | 基于若依架构的列表详情展示

六月的雨在InfoQ

bootstrap 开源 若依 8月月更

体验远超Hue,这才是技术人员最喜欢的SQL工具

雨果

sql hue DaaS数据即服务

Go-Excelize API源码阅读(五)—— Close()

Regan Yue

Go 开源 源码刨析 8月日更 8月月更

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