前言
FreeSql 在经过6个月的开发和朋友们的工作实践,不断的改进创新,目前拥有1500个左右单元测试方法,且每个方法内又复盖不同的测试面。
今天介绍 FreeSql 各种贪婪加载的姿势,作下总结。本节内容对应的还有【延时加载】,贪婪加载和他本该在一起介绍,开发项目的过程中应该双管齐下,才能写出高质量的程序。有关延时加载,日后有空再单独编写。
FreeSql是一个功能强大的NETStandard库,用于对象关系映射程序(O/RM),便于开发人员能够使用 .NETStandard 对象来处理数据库,不必经常编写大部分数据访问代码。
[√] 支持 CodeFirst 迁移;
[√] 支持 DbFirst 从数据库导入实体类,支持三种模板生成器;
[√] 采用 ExpressionTree 高性能读取数据;
[√] 支持深入的类型映射,比如pgsql的数组类型,堪称匠心制作;
[√] 支持丰富的表达式函数;
[√] 支持导航属性查询,和延时加载;
[√] 支持同步/异步数据库操作方法,丰富多彩的链式查询方法;
[√] 支持读写分离、分表分库,租户设计;
[√] 支持多种数据库,MySql/SqlServer/PostgreSQL/Oracle/Sqlite;
贪婪方法一:Dto 映射查询
Select().Limit(10).ToList(a => new TestDto { id = a.Id, name = a.Title });</