添加/插入 petapoco vs dapper 的风格
Posted
技术标签:
【中文标题】添加/插入 petapoco vs dapper 的风格【英文标题】:Add/Insert style of petapoco vs dapper 【发布时间】:2013-10-31 18:37:32 【问题描述】:我对此高兴:
// 用peta poco插入一条记录
var a = new Article();
a.title="My new article";
a.content="PetaPoco was here";
a.date_created=DateTime.UtcNow;
db.Insert(a);
我对此分心:
// 用 dapper 插入一条记录
var a = new Article();
a.title="My new article";
a.content="PetaPoco was here";
a.date_created=DateTime.UtcNow;
string articleQuery= "INSERT INTO Article VALUES (@Title, @Content, @Date)";
connection.Execute(articleQuery, new Title = a.Title, Content = a.Content, Date = a.Date );
我是 dapper 和 peta poco 的新手。可能是我还没有找到更多的 dapper,但我真的不喜欢我必须进行插入的方式。 Peta poco 似乎做的很朴素。
dapper 也能以某种方式做到这一点吗?
【问题讨论】:
【参考方案1】:如果你更喜欢 PetaPoco 风格,那就去吧。虽然 Dapper 更出名,但 PetaPoco 具有相同的性能,具有相同的概念,但更灵活一点(IMO)
【讨论】:
@Gaspa79 是的,你是对的。对绝大多数应用程序来说已经足够了。 对于 MS Access/Jet 数据库,PetaPoco 是您的救星。【参考方案2】:查看 dapper extensions 了解 Dapper 的“神奇”CRUD 操作:
using (SqlConnection cn = new SqlConnection(_connectionString))
cn.Open();
Person person = new Person FirstName = "Foo", LastName = "Bar" ;
int id = cn.Insert(person);
cn.Close();
另请参阅this 线程了解更多...
【讨论】:
【参考方案3】:开发人员使用 Drapper 是因为它的性能。对于许多网站来说,PetaPoco 已经足够好了,但如果你想提取所有服务器的“果汁”,请使用 Drapper。实际上它是 *** 使用的 ORM。可以看到所有的ORM性能对比here
【讨论】:
Dapper 和 PetaPoco 的性能基本相同,分别为 49 毫秒和 52 毫秒(示例中 EF 为 631)。以上是关于添加/插入 petapoco vs dapper 的风格的主要内容,如果未能解决你的问题,请参考以下文章
What would be the closest equivalent in Java to a Micro ORM such as Dapper, PetaPoco, Massive or Cod