(1) 5.1.3.144 版本自定分表出现问题就使用特性方式配置 不要在new db时配置
(2) 5.1.3.143 版本调整了 SqlFunc.DateValue 选周的返回值调整了和DayOfWeek枚举一致保证了多库统一
(3) .Net Core MySql 注意:5.1.3.40以前版升级到40以后需要看文档异步用法,新驱动对异步严谨了
(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
手动拼表达式不要写错了:
改动如下
红圈中就是错的And对应C#中的& 而AndAlso才是&&
2016 © donet5.comApache Licence 2.0