直接升级 ,如果有报错肯定是名字换了,点出来替换即可
1. 检查有没有设置initKey,没设置的要注意了
DbType = SqlSugar.DbType.SqlServer, ConnectionString = Config.ConnectionString, InitKeyType = InitKeyType.Attribute,//这个默认值换了,如果以前没有设置需要改成Systemtable IsAutoCloseConnection = true,
2. UpdateColumns报错名字改成SetColumns
3. 部分扩展方法报错需要引用新命名空间
4、mysql.data 使用8.0.21 或者 6.9.12 ,禁止用 6.0.10.xxx
5、SqlSugarClient换成SqlSugarScope 并且用单例模式
用SqlSugarScope单例模式取代低版本(5.0.2以下)的SqlSugarClient+IsShardSameThread效果一样,并且支持异步,
新版本移除了SqlSugarClient(5.0.2以下)的部分线程安全支持
方案1:
你可以把你的 SqlSugarClient 替换成单例的 SqlSugarScope (SqlSugarScope要用单例) 具体用法看 文档入门
如果不想替换那就需要找到db在哪里出现了跨线程使用
方案2:
报错代码加上
db.CopyNew().Queryable<Order>().ToList();//强制new出一个对象保证线程安全 //如果用到事务 var mydb=Db.CopyNew(); mydb.BeginTran(); mydb.Insertable(list).ExecuteCommand(); mydb.Insertable(list2).ExecuteCommand(); mydb.CommandTran();
https://www.donet5.com/Home/Doc?typeId=2359
手动拼表达式不要写错了:
2016 © donet5.comApache Licence 2.0