网站首页 > 技术文章 正文
介绍
FreeSql 是一个由国人开发并维护的C#生态优秀的ORM框架,至于是ORM(对象关系映射)框架,本文不再赘述。本文简单的来了解一下这款强大的ORM,它又有哪些过人之处!
Github
https://github.com/dotnetcore/FreeSql
特点
支持 .NETCore 2.1+ 或 .NETFramework 4.0+ 或 Xamarin。
- 支持 CodeFirst 迁移,哪怕使用 Access 数据库也支持;
- 支持 DbFirst 从数据库导入实体类,安装实体类生成工具;
- 支持 深入的类型映射,比如pgsql的数组类型;
- 支持 丰富的表达式函数,以及灵活的自定义解析;
- 支持 导航属性一对多、多对多贪婪加载,以及延时加载;
- 支持 读写分离、分表分库、过滤器、乐观锁、悲观锁;
- 支持 MySql/SqlServer/PostgreSQL/Oracle/Sqlite/Firebird/达梦/人大金仓/神舟通用/翰高/Access;
可以说支持的数据库非常的多,并且还包括部分国产数据库
FreeSql的使用方式很多,在Github上也提供了使用的不同方式案例
开发者优先,以开发者为中心的设计理念,想你所想,亦享你所享。
FreeSql的学习和使用指南
基础
- 《学习FreeSql之一:添加数据》
- 《学习FreeSql之二:删除数据》
- 《学习FreeSql之三:修改数据》
- 《学习FreeSql之四:查询数据》
- 《仓储层Repository》
进阶
- 《CodeFirst模式开发介绍》=》《CodeFirst模式之一:实体特性》《CodeFirst模式之二:FluentApi》《CodeFirst模式之三:自定义特性》《CodeFirst模式之四:类型映射》《CodeFirst模式之五:迁移结构》
- 《DbFirst模式开发介绍》
高级
- 《数据库事务》
- 《使用读写分离》
- 《分表分库》
- 《多租户》
- 《返回数据》
- 《优化之:延时加载》
- 《优化之:贪婪加载》
- 《Expression 表达式函数》
- 《AOP》
安装使用
dotnet add package FreeSql
基础的增删改查
- 查询
var blogs = fsql.Select<Blog>()
.Where(b => b.Rating > 3)
.OrderBy(b => b.Url)
.Skip(100)
.Limit(10) //第100行-110行的记录
.ToList();
- 插入
var blog = new Blog { Url = "http://xxx" };
blog.BlogId = (int)fsql.Insert<Blog>()
.AppendData(blog)
.ExecuteIdentity();
- 更新
fsql.Update<Blog>()
.Set(b => b.Url, "http://sample")
.Where(b => b.Url == "http://sample.")
.ExecuteAffrows();
- 删除
fsql.Delete<Blog>()
.Where(b => b.Url == "http://sample")
.ExecuteAffrows();
更多强大的功能,可以参考官方详细的文档
总结
FreeSql无疑是一个优秀的ORM框架,也是为.net生态添砖加瓦了,不仅仅是Freesql,还有类似的SqlSugar也是一个不错的ORM,它们不像EF那么重,但是功能比Dapper之类的又强很多,并且拥有着无与伦比的性能,值得推荐使用!
猜你喜欢
- 2024-10-29 Oracle SQL高级分组用法实战 oracle的sql分类
- 2024-10-29 Oracle SQL性能优化-并行执行 oracle数据库性能优化
- 2024-10-29 开发应用程序:React、GraphQL、Spring Data JPA、UCP,Oracle
- 2024-10-29 Oracle加快 Java 迭代速度,功能性版本只维护六个月
- 2024-10-29 oracle数据库优化:应用开发层的调优是最直接有效的手段
- 2024-10-29 低代码、Web浏览器开发工具Oracle APEX发布新版本
- 2024-10-29 Oracle探究_JAVA存储过程_开发指引《中》
- 2024-10-29 腾讯T14大佬开源的“Oracle与MySQL实战手册”看完被彻底惊艳了
- 2024-10-29 甲骨文Oracle 宣布计划开发强大的生成式 AI 服务
- 2024-10-29 java开发者 36% 的开发人员从 Oracle JDK 切换到OpenJDK
你 发表评论:
欢迎- 634℃几个Oracle空值处理函数 oracle处理null值的函数
- 626℃Oracle分析函数之Lag和Lead()使用
- 614℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 609℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 606℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 600℃【数据统计分析】详解Oracle分组函数之CUBE
- 588℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 574℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- CVE-2025-30762|Oracle(java oracle)
- 低代码可能铲不掉“屎山”,但能让这个它更有「型」
- 科技大事件:新苹果手表可通过击掌或握手来传递信息
- 你的百万级上下文窗口大模型,可能并没有你想象中那么强
- DApp 开发中的安全测试(软件测试过程中安全测试的具体应用场景和测试思路)
- 盘点Java中最没用的知识⑧:这3个过时套路,你还在代码里硬撑?
- 机房硬件设备及Oracle数据库软件维护服务项目竞争性磋商公告
- 微软与甲骨文扩大合作关系,推出Oracle Database@Azure
- JPA实体类注解,看这篇就全会了(java实体类注解)
- Java反射机制最全详解(图文全面总结)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)