ORM 和微型ORM有什么区别?



请提及(大)ORM和微型ORM之间的区别。微型ORM相对于大型ORM的优势是什么。例如。实体框架ORM和dapper micro ORM之间的区别。

它们只是不同的工具。micro-ORM的关键目标是删除大量数据访问代码不需要的层 - 基本上提供最小的API表面,并试图通过提供简单性带来的性能优势来平衡这一点。例如,您希望在ORM中找到但在micro-ORM中可能不可用的内容包括(取决于所使用的特定工具以及引入的其他扩展库):

  • 子成员的延迟加载(可能通过多态运行时类型生成,也许通过代码生成)
  • 身份跟踪
  • 更改跟踪
  • 丰富的复杂映射系统,支持多个后端数据库上的任意数据模型
  • 从复杂的 LINQ 表达式树或某些其他 DSL 生成复杂的查询
  • 工作单元 API - 本质上是一种SubmitChanges()方法,用于计算并应用一批相关更改

请注意,它们并不相互排斥:您可以在同一代码库中使用这两种方法,具体取决于不同位置的需求。

最新更新