官方参考:http://www.codeisbug.com/Doc/8
前言:这应该是目前最好用的ORM框架之一了,而且支持.net core,网上除了官方文档其他参考就少了点,自己整理了一下,大致包括:
· 概念
· 一个小demo(会涉及到T4模板生成Model)
· 常见用法(增删改查)
数据库是sqlserver2012,vs2017版本的,其他还有什么想到再补充。
一:概念
1.优势
支持.NET 4.0+ 和 .NET CORE
支持主流数据库:SQL Server,MySql,Oracle,Sqlite等;
2.安装
Nuget直接搜索
项目是Core安装sqlSugarCore版本,.Net安装sqlSugar。
3.连接
通过参数ConnnectionConfig创建连接,ConnectionConfig有6个属性:
1. ConnectionString: 连接字符串 (必填)
2. Data Type: 数据库类型 (必填)
3. IsAutoCloseConnection: 是否自动释放数据库,默认false
4. InitKeyType: 读取主键和自增列信息的方式,默认SystemTable
5. More Settings: 全局设置
6. ConfigureExternalServices: 可以扩展你想要的序列化方式和缓存方式等服务
例:
SqlSugarClient db = new SqlSugarClient(new ConnectionConfig()
{
ConnectionString = Config.ConnectionString,
DbType = DbType.SqlServer,
IsAutoCloseConnection = true,
InitKeyType = InitKeyType.SystemTable
});
不过后面的版本有变动,以下是4.6.1版本的:
SqlSugar对象不能是静态变量,但可以是静态属性。
例:
Public static SqlSugarClient Instance
{
get => new SqlSugarClient(xx);
]
Var db = 类.Instance;
db.Queryable<T>().ToList;
二:项目实例
1:新建项目:.net core
我选择空模板,其他的也行,建议MVC
2.添加两个类库(我习惯分层写,也可以不分层)
一定是添加不要在上面新建
3.在ORM层安装sqlSugar,.net选第一个就好了
4.使用T4模板生成Model
a.先在sql server中建好表,数据库名:SqlSugarDemo
[表Student]:
b.右键项目->添加文本模板,名字随便起,后缀tt
c.写好tt模板保存一下就会刷新出model,Teacher和Course表先不用管
(tt模板里的内容自行百度,我照搬公司的就不贴了,其实都差不多,SqlSugarBase.cs是下一步建的,我截图晚了)
5.在ORM层新建SqlSugarBase类,用来提供DB访问对象,代码可以参考官方文档:(代码已修正,本页最底下)
![](https://i-blog.csdnimg.cn/blog_migrate/8f900a89c6347c561fdf2122f13be562.gif)
![](https://i-blog.csdnimg.cn/blog_migrate/961ddebeb323a10fe0623af514929fc1.gif)
using SqlSugar; namespace SqlSugarDemo.ORM { public