红帽白皮书新鲜出炉!点击获取,让你的云战略更胜一筹! 了解详情
写点什么

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

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

关注

评论

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

虚拟化技术浅析第二弹之初识Kubernetes

京东科技开发者

云计算 容器 微服务 #Kubernetes# 虚拟化技术

企业的数据存储、处理与分析之道

云布道师

阿里云 云存储

MatrixOne入选艾瑞数据库研究报告啦~

MatrixOrigin

分布式数据库 国产数据库 MatrixOrigin MatrixOne 艾瑞咨询

【Dubbo3 终极特性】「云原生三中心架构」带你探索 Dubbo3 体系下的配置中心和元数据中心、注册中心的原理及开发实战(中)

洛神灬殇

dubbo 注册中心 配置中心 Dubbo3 元数据中心

运联智库发布2022供应链及合同物流百强排行榜

联营汇聚

如何训练开发者记忆能力

SEAL安全

开发者 实用技能 记忆

3 📖 《JavaScript高级程序设计》__ 语言基础(上)

HoMeTown

JavaScript 前端 读书 js

岁末年初捷报频传 HashData斩获多项行业殊荣

酷克数据HashData

数据库·

云原生安全系列 5:ETCD 安全加固

HummerCloud

etcd Kubernetes, 云原生, eBPF

使用MTK迁移Mysql源库后主键自增列导致数据无法插入问题

华为云开发者联盟

数据库 后端 华为云 企业号 1 月 PK 榜

揭开华为云CodeArts TestPlan启发式测试设计神秘面纱!

华为云开发者联盟

云计算 后端 华为云 企业号 1 月 PK 榜

2023年1月中国数据库排行榜:OceanBase 持续两月登顶,前四甲青云直上开新局

墨天轮

数据库 opengauss tdsql 国产数据库 polarDB

Pipy 实现 SOCKS 代理

Flomesh

HTTP Service Mesh 服务网格 Pipy 流量管理

玩转机密计算从 secGear 开始

openEuler

开源 操作系统 openEuler 机密计算

3 📖 《JavaScript高级程序设计》__ 语言基础(下)

HoMeTown

JavaScript 前端 读书 js 前端面试

如何使用极狐GitLab 机器人大幅提升研发效率

极狐GitLab

项目管理 DevOps 机器人流程自动化 极狐GitLab 研发效率

mysql 中字段的 collate 和 charset 有什么区别

ModStart

eBPF SIG年度动态: eBPF和Wasm深度融合、参与7场活动及2023展望 | 龙蜥 SIG

OpenAnolis小助手

Linux 开源 ebpf 龙蜥社区 sig

使用 YonBuilder 进行报表分析 - 扩展篇

YonBuilder低代码开发平台

实力领跑 | 旺链科技入选《2022中国区块链技术创新典型企业名录》

旺链科技

区块链 区块链技术 产业区块链

图像增强及运算:局部直方图均衡化和自动色彩均衡化处理

华为云开发者联盟

Python 人工智能 华为云 企业号 1 月 PK 榜

【案例分享】如何利用京东云建设高可用业务架构

京东科技开发者

云计算 架构 高可用架构 后端、 企业号 1 月 PK 榜

2 📖 《JavaScript高级程序设计》__ HTML中的JavaScript

HoMeTown

JavaScript 前端 读书 js

LED显示屏都需要4个配套设施

Dylan

LED显示屏 户外LED显示屏 led显示屏厂家

研发团队绩效考核:Leader 如何做到赏罚分明?

石云升

极客时间 复盘 1月月更 技术领导力实战笔记

荣誉+1,龙蜥荣获“2022年度杰出开源运营团队”奖项

OpenAnolis小助手

开源 InfoQ 运营 获奖 龙蜥团队

如何打造一个“无需激励”自运转的技术团队?

石云升

极客时间 复盘 激励 1月月更 技术领导力实战笔记

马蜂窝如何利用 APISIX 网关实现微服务架构升级

API7.ai 技术团队

api 网关 APISIX envoy ingress Kubernetes, 云原生, eBPF

声网许振明:RTC 场景 UHD 视频应用和探索

声网

前端 音视频 RTC

证券服务应用评测系列:海通e海通财发布9.0版本,探索证券APP持续提升用户体验

易观分析

App 证券

NFTScan 与 SeeDAO 孵化器达成战略合作,为开发者提供专业的 NFT 数据服务!

NFT Research

NFT

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