写点什么

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

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

关注

评论

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

使用 Flink Hudi 构建流式数据湖平台

Apache Flink

大数据 flink 编程 数据湖 实时计算

在线YAML转JSON工具

入门小站

工具

白盒绕过、黑盒绕过——绕过waf(一)

喀拉峻

网络安全

网络安全kali渗透学习 web渗透入门 WireShark抓包及常用协议分析

学神来啦

MASA Framework - DDD设计(1)

MASA技术团队

C# .net 微软 框架 Framework

教你用Elastic Search:运行第一条Hello World搜索命令 原创

华为云开发者联盟

数据库 全文检索 索引 Elastic Search 分布式实时搜索引擎

CRM重构项目

Mars

新年新知 | 2022必读的5篇行业趋势(内附下载)

LigaAI

AI 创新 行业趋势 新能源

G7完成2亿美元融资

极客天地

云原生多云应用利器--Karmada 总览篇

Daocloud 道客

云原生 多云管理 Karmada

数据分析实际案例之:pandas在餐厅评分数据中的使用

程序那些事

Python 数据分析 pandas 程序那些事 2月月更

声网Agora Lipsync 技术揭秘:通过实时语音驱动人像模拟真人说话

声网

人工智能 音视频

Linux常用的命令

龙空白白

linux 文件权限控制 linuc

手把手带你基于嵌入式Linux移植samba服务

华为云开发者联盟

Linux 嵌入式 Samba UNIX系统 SMB协议

DG-IoT: 开源项目职业教育助力解决过度补课难题

dgiot

物联网 2月月更 2月日更 dgiot dgiot物联网

知名信息安全厂商渔翁信息加入龙蜥社区,共建开源生态

OpenAnolis小助手

Linux 开源 信息安全

云原生微服务技术趋势解读

阿里巴巴中间件

阿里云 微服务 云原生 中间件

低代码如何解锁制造业数字生态系统?

TOBESOFT特碧软件

低代码 数字化 TOBESOFT

消除if-else之为Enum添加行为实现策略模式

topsion

Java clean code

一周信创舆情观察(2.7~2.13)

统小信uos

网络编程懒人入门(十四):到底什么是Socket?一文即懂!

JackJiang

TCP 网络编程 socket IM 即时通讯IM

Java线程池必知必会

CRMEB

Kubernetes应用,如何选择适合你的Kubernetes应用发布模式

阿里云云效

阿里云 Kubernetes 云原生 CI/CD 发布模式

DevOps进阶(四):Jenkins 实战之构建定时项目与远程触发器

No Silver Bullet

DevOps jenkins 定时器 2月月更 触发器

运维安全是指什么?如何做好运维安全?

行云管家

运维 网络安全 IT运维 运维安全

如何构建一个流量无损的在线应用架构 | 专题中篇

阿里巴巴中间件

阿里云 云原生 中间件

北京冬奥有哪些AI“黑科技”?

澳鹏Appen

人工智能 自动驾驶 计算机视觉 nlp 黑科技

CTF中PHP相关题目考点总结(二)

H

网络安全 CTF

英特尔CEO:开启超级摩尔定律的时代,推动前沿进展

科技新消息

如何构建一个流量无损的在线应用架构 | 专题尾篇

阿里巴巴中间件

阿里云 云原生 中间件 EDAS

优秀程序员的30种思维--分析总结篇(13/100)

hackstoic

架构思维

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