.Net项目引入ORM SqlSugar框架及简单使用

3 篇文章 0 订阅

SqlSugar的优点就不在这里重复了。

一,Nuget 安装

SqlSugar是.NET版本,SqlSugarCore是.NET CORE版本,根据你的项目选择你的引用dll

 

二,简单使用

1.建立数据库连接

public SqlSugarClient GesmartDb()
        {
            SqlSugarClient Db = new SqlSugarClient(new ConnectionConfig()
            {
                ConnectionString = "Data Source=127.0.0.1,1433;Initial Catalog=xxx;User ID=sa;Password=1;Max Pool Size=1000;MultipleActiveResultSets=true;",//数据库连接串
                DbType = DbType.SqlServer,
                InitKeyType = InitKeyType.Attribute,//从特性读取主键和自增列信息
                IsAutoCloseConnection = true,//开启自动释放模式和EF原理一样我就不多解释了

            });
            //用来打印Sql方便调式    
            Db.Aop.OnLogExecuting = (sql, pars) =>
                {
                    //记录日志
                    SmartLog.WriteLog(sql + "\r\n" +
                    Db.Utilities.SerializeObject(pars.ToDictionary(it => it.ParameterName, it => it.Value)));
                };
            return Db;
        }

2.根据需求使用SQLSugar实现增删改查



using (SqlSugarClient db = commonDb.GesmartDb())
{
    /*查询*/
    var list = db.Queryable<StudentModel>().ToList();//查询所有
    var getById = db.Queryable<StudentModel>().InSingle(1);//根据主键查询
    var getByWhere = db.Queryable<StudentModel>().Where(it=>it.Id==1).ToList();//根据条件查询
    var total = 0;
    var getPage = db.Queryable<StudentModel>().Where(it => it.Id == 1).ToPageList(1,2,ref total);//根据分页查询
    //多表查询用法 http://www.codeisbug.com/Doc/8/1124
 
    /*插入*/
    var data = new Student() { Name = "jack" };
    db.Insertable(data).ExecuteCommand();
    //更多插入用法 http://www.codeisbug.com/Doc/8/1130
 
    /*更新*/
    var data2 = new Student() { Id =1, Name = "jack" };
    db.Updateable(data2).ExecuteCommand();
    //更多更新用法 http://www.codeisbug.com/Doc/8/1129
 
    /*删除*/
    db.Deleteable<StudentModel>(1).ExecuteCommand();
    //更多删除用法 http://www.codeisbug.com/Doc/8/1128
}

三,目前个人使用比较顺手的SQLSugar小技巧,直接上代码。

1.根据数据库生成实体类

using (SqlSugarClient db = commonDb.GesmartDb())
{
                //直接生成数据库所有实体类,并识别自增长ID  生成类的文件夹地址D:\xxx\DbModels 生成类的命名空间 xxx_Entity
                     db.DbFirst.IsCreateAttribute().CreateClassFile(@"D:\xxx\DbModels", "xxx_Entity");
                //生成数据库单个表的实体类,并识别自增长ID  生成类的文件夹地址D:\xxx\DbModels 生成类的命名空间 xxx_Entity
                     db.DbFirst.IsCreateAttribute().Where("Workcenter").CreateClassFile(@"D:\xxx\DbModels", "xxx_Entity");
}

2.直接执行SQL语句,由于老项目比较杠都是手写sql语句,所以sql语句都比较骚气,所以在用这个框架时还是忍不住骚一把。

using (SqlSugarClient db = commonDb.GesmartDb())
            {
                //获取插入后的自增长列
                long i = db.Insertable(card).IgnoreColumns(c => new { c.FinishTime, c.LeaveTime, c.ArriveTime }).ExecuteReturnIdentity();

                //递归查询,假装很骚
                DataTable tbMobile = db.Ado.GetDataTable(@"WITH CTE AS 
            (SELECT  xxx from xxx where DepartmentID=@departmentID and StatusID=@statusID)
            SELECT  xxx FROM  xxx c INNER JOIN  CTE t ON xxx", new List<SugarParameter>(){
                            new SugarParameter("@departmentID",11),
                            new SugarParameter("@statusID",2)
                    });

                return new ResultInfo() { Message = i.ToString(), DateTime = DateTime.Now, Status = "200" };
            }

--------------------END------------------------

后面使用发现有意思的再分享

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
.NET Framework是微软公司推出的一个跨平台的软件开发框架。它提供了一个能够快速构建各种类型的应用程序的基础,包括Web应用、桌面应用和移动应用等。WebAPI是.NET Framework中的一部分,它是一种用于构建Web服务的技术,可以让开发人员以面向资源的方式来创建和访问Web API。 SQLSugar.NET Framework中的一个ORM框架,它允许开发人员通过编写简单的代码来执行SQL查询和操作数据库。 SQLSugar提供了许多强大的功能,比如简化的查询语法、多表查询、分页查询和事务支持等。 使用.NET Framework WebAPI和SQLSugar可以构建强大的Web应用程序。首先,开发者可以使用WebAPI来创建RESTful的Web服务,提供一个可靠的数据接口给前端应用或其他后端应用程序使用。开发者可以使用标准的HTTP方法来执行各种操作,比如GET、POST、PUT和DELETE等。 在WebAPI中,我们可以使用SQLSugar来处理数据库操作。通过SQLSugar,开发者可以很方便地进行数据库的连接和查询。SQLSugar提供了简洁易用的API,使得开发者可以轻松地完成各种查询和更新操作。开发者可以使用LINQ语法来编写查询语句,也可以使用原生的SQL语句。SQLSugar支持事务处理,可以确保数据库操作的一致性和完整性。 总之,使用.NET Framework WebAPI和SQLSugar可以帮助开发者快速构建可靠、高效的Web应用程序。WebAPI提供了一个强大的接口,可以方便地与前端应用或其他后端应用进行数据交互。SQLSugar则提供了一个简单、灵活的数据库操作方式,使得开发者可以轻松地处理数据库查询和更新。通过使用这些技术,开发者可以加快应用程序的开发速度,并提高应用程序的性能和可维护性。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值