SqlSugarHelper.cs
using Microsoft.Extensions.Configuration; using Microsoft.IdentityModel.Protocols; using SqlSugar; using System; using System.Collections.Generic; using System.Configuration; using System.IO; namespace PT.DAL { public class SqlSugarHelper { //多库情况下使用说明: //如果是固定多库可以传 new SqlSugarScope(List<ConnectionConfig>,db=>{}) 文档:多租户 //如果是不固定多库 可以看文档Saas分库 //static string connstr = ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString; private readonly static IConfiguration Configuration = new ConfigurationBuilder() .SetBasePath(Directory.GetCurrentDirectory()) .AddJsonFile("appsettings.json", optional: true) .Build(); private static string conn = Configuration.GetConnectionString("BaseDb"); static string sqlstr; static SqlSugarHelper() { //Install-Package Microsoft.Extensions.Configuration //Install - Package Microsoft.Extensions.Configuration.Json } //用单例模式 public static SqlSugarScope Db = new SqlSugarScope(new ConnectionConfig() { ConnectionString = conn,// "", //", DbType = DbType.SqlServer,//数据库类型 IsAutoCloseConnection = true //不设成true要手动close }, db => { //(A)全局生效配置点,一般AOP和程序启动的配置扔这里面 ,所有上下文生效 //调试SQL事件,可以删掉 db.Aop.OnLogExecuting = (sql, pars) => { Console.WriteLine(sql);//输出sql,查看执行sql 性能无影响 //获取原生SQL推荐 5.1.4.63 性能OK //sqlstr = UtilMethods.GetNativeSql(sql, pars); //获取无参数化SQL 对性能有影响,特别大的SQL参数多的,调试使用 //sqlstr = UtilMethods.GetSqlString(DbType.SqlServer, sql, pars); }; //多个配置就写下面 //db.Ado.IsDisableMasterSlaveSeparation=true; //注意多租户 有几个设置几个 //db.GetConnection(i).Aop }); } }
标签:
项目模板(DAL)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现