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 }); } }