我搜索以更快地使用数据访问 orm 并加快获取和实施的速度 我在OrmBattle http://www.ormbattle.net/中遇到了 BLToolKit ,它在性能、速度、可维护性和灵活性方面看起来绝对令人惊叹。但不是很清楚吗? 如果有人对 BLToolkit 有想法,这是否是http://www.ormbattle.net/中的真实比较,可以帮助我吗?谢谢
6 回答
这也是我大约一年前发现 BLToolkit 的原因。从那以后,我在我所有的项目中都使用它,其中两个都是大型商业项目。我会强烈推荐给大家。请记住,您在使用 BLToolkit 时直接使用数据库,这意味着每个选择、插入、更新或删除命令都会立即在服务器上执行。
我已经沉迷于 BLToolkit 3 年了 :(
BLToolkit 的问题在于它具有正确的抽象级别
所以你仍然需要考虑你的数据库,但你不必在字符串中编写真正的 SQL(就像在 Dapper 中一样),因为你有一个很棒的可扩展的 Linq 提供程序。
而且您没有实体跟踪和延迟加载,这通常会导致真正的性能问题(N + 1 选择)(如在 Nhibernate/EF 中)
这是一个哲学问题,因为其他人没有答案(或者不仅仅是一个答案)。
BLT 很棒,但它大多没有文档(单元测试和自文档代码方法,这主要是文档),但如果你会使用它 - 你会喜欢它:)
我对 BLToolkit 无话可说,但是......
如果您正在寻找一个非常(非常)快的轻量级 ORM,请查看Dapper-dot-net。它的使用非常简单直观,您可以轻松地将其添加到您的项目中,NuGet
或者简单地添加一个所需的文件。
如果您向下滚动到Performance
,您还可以直接比较Dapper
和BLToolkit
它不受欢迎,因为作者不投资普及。
我曾与 Linq2Sql、NHybernate、EF 合作过,尝试过一些商业 ORM 框架和代码生成 DAL。
在我看来,BLT 是最好的。为什么?因为它为您提供了恰到好处的抽象级别。它支持 Linq 选择/更新/插入/删除,并且没有实体跟踪胡说八道。
BLToolkit 不是像 NHibernate 那样功能丰富的 ORM(在较小程度上是实体框架)。功能丰富的 ORM 更受欢迎。
ORMBattle 没有很好的声誉,因为它是由一个特色供应商发起的(即对偏见的猖獗抱怨),而 NHibernate 和 LLBLGen 这两个更流行的 .NET ORM 没有得到适当的表示。