- 优化 GlobalFilter Apply 自动重命名表达式参数名,避免内容重复问题;

- 修复 表达式解析 Guid.NewGuid() 的错误;
This commit is contained in:
28810
2019-12-05 20:10:39 +08:00
parent e01f7a2061
commit 05cf13f560
14 changed files with 90 additions and 109 deletions

View File

@ -73,25 +73,25 @@ namespace FreeSql.Odbc.Default
case "System.UInt64": return _utils.Adapter.LambdaConvert_ToUInt64(callExp.Method.DeclaringType, getExp(callExp.Arguments[0]));
case "System.Guid": return _utils.Adapter.LambdaConvert_ToGuid(callExp.Method.DeclaringType, getExp(callExp.Arguments[0]));
}
break;
return null;
case "NewGuid":
switch (callExp.Method.DeclaringType.NullableTypeOrThis().ToString())
{
case "System.Guid": return _utils.Adapter.LambdaGuid_NewGuid;
}
break;
return null;
case "Next":
if (callExp.Object?.Type == typeof(Random)) return _utils.Adapter.LambdaRandom_Next;
break;
return null;
case "NextDouble":
if (callExp.Object?.Type == typeof(Random)) return _utils.Adapter.LambdaRandom_NextDouble;
break;
return null;
case "Random":
if (callExp.Method.DeclaringType.IsNumberType()) return _utils.Adapter.LambdaRandom_NextDouble;
break;
return null;
case "ToString":
if (callExp.Object != null) return callExp.Arguments.Count == 0 ? _utils.Adapter.LambdaConvert_ToString(callExp.Object.Type, getExp(callExp.Object)) : null;
break;
return null;
}
var objExp = callExp.Object;