add ToTreeList tests #268

This commit is contained in:
28810
2020-04-10 13:09:08 +08:00
parent f9566af7d1
commit 4e4240ff7a
24 changed files with 1291 additions and 283 deletions

View File

@ -249,7 +249,7 @@ namespace FreeSql.SqlServer.Curd
#endregion
public SqlServerSelect(IFreeSql orm, CommonUtils commonUtils, CommonExpression commonExpression, object dywhere) : base(orm, commonUtils, commonExpression, dywhere) {
if (FreeSqlSqlServerGlobalExtensions._dicSetGlobalSelectWithLock.TryGetValue(orm, out var tryval))
if (FreeSqlSqlServerGlobalExtensions._dicSetGlobalSelectWithLock.TryGetValue(orm.Ado.Identifier, out var tryval))
this.WithLock(tryval.Item1, tryval.Item2);
}
public override ISelect<T1, T2> From<T2>(Expression<Func<ISelectFromExpression<T1>, T2, ISelectFromExpression<T1>>> exp) { this.InternalFrom(exp); var ret = new SqlServerSelect<T1, T2>(_orm, _commonUtils, _commonExpression, null); SqlServerSelect<T1>.CopyData(this, ret, exp?.Parameters); return ret; }

View File

@ -39,10 +39,10 @@ public static partial class FreeSqlSqlServerGlobalExtensions
public static IFreeSql SetGlobalSelectWithLock(this IFreeSql that, SqlServerLock lockType, Dictionary<Type, bool> rule)
{
var value = NaviteTuple.Create(lockType, rule);
_dicSetGlobalSelectWithLock.AddOrUpdate(that, value, (_, __) => value);
_dicSetGlobalSelectWithLock.AddOrUpdate(that.Ado.Identifier, value, (_, __) => value);
return that;
}
internal static ConcurrentDictionary<IFreeSql, NaviteTuple<SqlServerLock, Dictionary<Type, bool>>> _dicSetGlobalSelectWithLock = new ConcurrentDictionary<IFreeSql, NaviteTuple<SqlServerLock, Dictionary<Type, bool>>>();
internal static ConcurrentDictionary<Guid, NaviteTuple<SqlServerLock, Dictionary<Type, bool>>> _dicSetGlobalSelectWithLock = new ConcurrentDictionary<Guid, NaviteTuple<SqlServerLock, Dictionary<Type, bool>>>();
#region ExecuteSqlBulkCopy
/// <summary>