SqlSugar简单使用封装

一、SqlSugar简单使用封装

 1.  封装读取数据库的方法:

  

复制代码
public  static SqlSugarClient GetInstance()
        {
            //SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { ConnectionString = "server=1231236;user id=123123;password=123123;persistsecurityinfo=True;database=pingjiae;", DbType = DbType.MySql, IsAutoCloseConnection = true });
            SqlSugarClient db = new SqlSugarClient(new ConnectionConfig() { ConnectionString = ConfigurationManager.ConnectionStrings["LeaRunFramework_MySqL"].ConnectionString, DbType = DbType.MySql, IsAutoCloseConnection = true });
            db.Aop.OnLogExecuting = (sql, pars) =>
            {
                //Console.WriteLine(sql + "\r\n" + db.Utilities.SerializeObject(pars.ToDictionary(it=>it.ParameterName,it=>it.Value)));
                //Console.WriteLine();
            };
            return db;
        }
复制代码

二、 调用上面的方法:

 private readonly SqlSugarClient Db = null;
        public LuckyDrawBll()
        {
            Db = DemoBase.GetInstance();
        }

三、  SqlSugar常用的方法总结:

  1. 第一种读取数据的方法。

复制代码
string year = DateTime.Now.Year.ToString();
                string month = DateTime.Now.Month.ToString();
                string day = DateTime.Now.Day.ToString();
                string leaderboardluckylog = string.Format(" select * from fksd_leaderboardluckylog where UserId=@UserId and SiteId = @SiteId and prizeType=1 and year(CreateTime)=@year and month(CreateTime)=@month and day(CreateTime)=@day");
                List<SugarParameter> sugarParameters = new List<SugarParameter>();
                sugarParameters.Add(new SugarParameter("UserId", UserId));
                sugarParameters.Add(new SugarParameter("SiteId", SiteId));
                sugarParameters.Add(new SugarParameter("year", year));
                sugarParameters.Add(new SugarParameter("month", month));
                sugarParameters.Add(new SugarParameter("day", day));

                //查看抽奖日志
                List<fksd_leaderboardluckylog> log = Db.Ado.SqlQuery<fksd_leaderboardluckylog>(leaderboardluckylog, sugarParameters);
复制代码

   2. 第二种读取数据的方法。

  

string configSql = "select * from fksd_leaderboardlucky where UserId=@userId and SiteId=@siteId";
            fksd_leaderboardlucky configRusult = Db.Ado.SqlQuery<fksd_leaderboardlucky>(configSql, new { userId = userId, siteId = siteId }).FirstOrDefault();

   3. 第三种读取数据的方法。

string userPrizeList = "select b.UserName,c.PrizeType,c.PrizeName,a.CreateTime from fksd_leaderboardluckylog a left join fksdtb_user b on a.UserId=b.Id left join fksd_prize c on a.PrizeId=c.Id  where a.UserId=@userId and a.SiteId=@siteId and TO_DAYS(now()) - TO_DAYS(a.CreateTime) <=7 ";
            List<Getprizes> userList = Db.Ado.SqlQuery<Getprizes>(userPrizeList, new { userId, siteId });

  4. 第四种读取数据的方法。

string configSql = "select * from task_config where RewardKey=@RewardKey";
            task_config configRusult = Db.Ado.SqlQuery<task_config>(configSql, new { RewardKey = RewardKey }).FirstOrDefault();

  5. 第五种读取数据的方法

var leaderboard = Db.Queryable<fksd_leaderboardlucky>().First(w => w.SiteId == entity.SiteId && entity.UserId == w.UserId);

  6. 执行插入的方法

Db.Insertable<fksd_leaderboardlucky>(entity).ExecuteCommand();

  7. 执行更新的方法

Db.Updateable<fksd_leaderboardlucky>(leaderboard).ExecuteCommand();

 

posted @   锦大大的博客呀!  阅读(3021)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
历史上的今天:
2019-08-17 向SqlParameter内动态添加参数
点击右上角即可分享
微信分享提示