C#+SqlSugar--秘籍第一宗

通俗解释 SqlSugarClient 配置 (SQL Server 版本)

这段代码是配置 SqlSugar ORM 来连接 SQL Server 数据库,我来用大白话解释:

1. 创建数据库连接(相当于配一把钥匙)

new SqlSugarClient(new ConnectionConfig() {
    ConnectionString = "Server = .;DataBase = Demo;Uid = Demo;Pwd =9", // 钥匙的齿形 
    DbType = DbType.SqlServer,  // 明确这是开SQL Server门的钥匙 
    IsAutoCloseConnection = true // 用完后自动拔钥匙 
})
  • Server=. :连接本地的SQL Server(那个点.代表本机)
  • DataBase=Demo:要打开的数据库叫"Demo"
  • Uid=Demo:用"Demo"这个账号登录
  • Pwd=9:密码是"9"

2. 装个监控摄像头(AOP配置)

db.Aop.OnLogExecuting = (sql, pars) => {
    Console.WriteLine(UtilMethods.GetNativeSql(sql, pars)); 
}
  • 每次执行SQL语句时,自动记录日志(像摄像头拍下所有开门动作)
  • GetNativeSql:显示SQL语句和参数(性能更好)
  • (注释掉的GetSqlString是完整SQL,但性能差)

3. 特别提醒

  • 多租户情况下(类似一栋楼里多个公司),需要为每个租户单独配置
  • 就像写字楼要有不同公司的门禁卡系统

简单说:这段代码就是配一把能自动关闭的SQL Server钥匙,并在每次使用钥匙时记录操作日志。

//创建数据库对象 (用法和EF Dappper一样通过new保证线程安全)
SqlSugarClient Db = new SqlSugarClient(new ConnectionConfig()
{
    ConnectionString = "Server = .;DataBase = Demo;Uid = Demo;Pwd =9",
    DbType = DbType.SqlServer,
    IsAutoCloseConnection = true
},
db => {

    db.Aop.OnLogExecuting = (sql, pars) =>
    {

        //获取原生SQL推荐 5.1.4.63  性能OK
        Console.WriteLine(UtilMethods.GetNativeSql(sql, pars));

        //获取无参数化SQL 对性能有影响,特别大的SQL参数多的,调试使用
        //Console.WriteLine(UtilMethods.GetSqlString(DbType.SqlServer,sql,pars))


    };

    //注意多租户 有几个设置几个
    //db.GetConnection(i).Aop

});

.NET 操作 SqlServer

连接字符串

注意1:部分版本要加上 Encrypt=True;TrustServerCertificate=True;

//SqlSugar或者SqlSugarCore 1.1.4.68以下版本
server=.;uid=sa;pwd=haosql;database=SQLSUGAR4XTEST
 
//SqlSugarCore 5.1.4.169上以上版本
server=.;uid=sa;pwd=haosql;database=SQLSUGAR4XTEST;Encrypt=True;TrustServerCertificate=True;

如果ORM连接不上数据库:
请使用原生写法测试:new   SqlConnection("字符串").Open(); 原生写法通过ORM就能用

new SqlConnection(db.CurrentConfig.ConnectionString).Open()//原生进行测试 是否是 SqlSUgar问题

.NET8配置注意

SqlServer 改一下启动项目的 csproj文件 ,设置为false

 <InvariantGlobalization>false</InvariantGlobalization>

通俗解释 .NET 连接 SQL Server 的那些注意事项

1. 连接字符串的区别(就像不同版本的钥匙)

  • 老版本钥匙(SqlSugar 1.1.4.68以下): "server=.;uid=sa;pwd=haosql;database=SQLSUGAR4XTEST"
    • 就像普通门锁钥匙,直接插进去就能用
  • 新版本钥匙(SqlSugarCore 5.1.4.169以上): "server=.;uid=sa;pwd=haosql;database=SQLSUGAR4XTEST;Encrypt=True;TrustServerCertificate=True;"
    • 像智能门锁钥匙,需要额外验证身份(加密和信任证书)

2. 当钥匙不好用时(连接失败)

检查方法(先试试原始开门方式)

new SqlConnection("你的连接字符串").Open() 
  • 相当于不用智能钥匙,试试直接用最原始的钥匙开门
  • 如果原始方式也打不开,说明是钥匙本身有问题,不是智能钥匙系统的问题

在SqlSugar中检查的方法

new SqlConnection(db.CurrentConfig.ConnectionString).Open()
  • 相当于把智能钥匙拆开,用里面的原始钥匙试试

3. .NET 8 特别提醒(就像新房子要改装修)

在项目文件(.csproj)里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值