官方网站:https://www.donet5.com/Home/Doc
SqlSugar属于orm框架,但比EF更加轻量级,性能也更优越。
下面用示例演示相关用法
项目结构:
项目需要应用程序集:SqlSugarCore
BaseOperate类
using SqlSugar; using SqlSugarStart.DbModels; using System; using System.Collections.Generic; namespace SqlSugarStart { public static class BaseOperate { public static void test1() { try { SqlSugarClient sqlSugarClient = new SqlSugarClient(new ConnectionConfig { DbType = DbType.SqlServer,//要连接的数据库类型 ConnectionString = "server=.;uid=sa;pwd=123456;database=SqlSugarTest",//sqlsqver数据库链接字符串 IsAutoCloseConnection = true }); #region 创建数据库和表的语句仅执行一次 sqlSugarClient.DbMaintenance.CreateDatabase(); //创建数据库 sqlSugarClient.CodeFirst.SetStringDefaultLength(200).InitTables(typeof(Commodity));//创建表 #endregion sqlSugarClient.Aop.OnLogExecuted = (sql, pra) => { Console.WriteLine("*****************************************************"); Console.WriteLine($"sql语句:{sql}"); }; //新增一条记录 sqlSugarClient.Insertable<Commodity>(new Commodity() { ProductId = 1, CategoryId = 1, Title = "测试", Price = 1, Url = "test", ImageUrl = "testtest" }).ExecuteCommand(); List<Commodity> list = sqlSugarClient.Queryable<Commodity>().ToList();//查询多条数据 Commodity commodity = sqlSugarClient.Queryable<Commodity>().First();//查询单条数据 commodity.ImageUrl = commodity.ImageUrl + "11111"; sqlSugarClient.Updateable<Commodity>(commodity).ExecuteCommand();//修改 sqlSugarClient.Deleteable<Commodity>(commodity).ExecuteCommand();//删除 } catch (Exception) { throw; } } } }
Commodity类
using SqlSugar; namespace SqlSugarStart.DbModels { [SugarTable("Commodity")] public class Commodity { [SugarColumn(IsPrimaryKey = true, IsIdentity = true)] public int Id { get; set; } public long ProductId { get; set; } public int CategoryId { get; set; } public string Title { get; set; } public decimal Price { get; set; } public string Url { get; set; } public string ImageUrl { get; set; } } }
Main方法
using System; namespace SqlSugarStart { class Program { /// <summary> /// sqlsugar相关 /// </summary> /// <param name="args"></param> static void Main(string[] args) { BaseOperate.test1(); Console.ReadLine(); } } }
数据库和数据库中的表都不需要提前创建,SqlSugar可以帮助我们创建数据库和表
执行上面这两代码SqlSugar就会自动创建数据库和表。这段代码一般只执行一次,创建完成就注释,避免重复执行,影响程序执行效率。
执行结果:
在修改语句加上断点,可以去数据库查询到新增的记录
数据库查询结果
下面是程序执行过程中对应的sql语句
SqlSugar底层还是执行的SQL语句。
在通往幸福道路上,并没有什么捷径可走,唯有付出努力和拼搏