mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-06-19 12:28:15 +08:00
@ -2,7 +2,7 @@
|
||||
|
||||
<PropertyGroup>
|
||||
<TargetFrameworks>netstandard2.0;net45;net40</TargetFrameworks>
|
||||
<Version>2.0.0-preview1108</Version>
|
||||
<Version>2.0.0-preview1109</Version>
|
||||
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
|
||||
<Authors>FreeSql;ncc;YeXiangQin</Authors>
|
||||
<Description>FreeSql is the ORM in .NetCore, .NetFramework, And Xamarin. It supports Mysql, Postgresql, SqlServer, Oracle, Sqlite, Firebird, Odbc, 达梦, 人大金仓, 神舟通用, 翰高, And Access</Description>
|
||||
|
@ -1622,12 +1622,12 @@ namespace FreeSql.Internal
|
||||
var errorKey = FreeUtil.Sha1($"{(isMultitb ? 1 : 0)},{fl.Where.ToString()}");
|
||||
if (dicSqlError.ContainsKey(errorKey)) continue;
|
||||
|
||||
var visitor = new ReplaceVisitor();
|
||||
var visitor = new ReplaceParameterVisitor();
|
||||
try
|
||||
{
|
||||
var expExp = Expression.Lambda(
|
||||
typeof(Func<,>).MakeGenericType(tb.Table.Type, typeof(bool)),
|
||||
new ReplaceVisitor().Modify(fl.Where, newParameter),
|
||||
new ReplaceParameterVisitor().Modify(fl.Where, newParameter),
|
||||
newParameter
|
||||
);
|
||||
var whereSql = ExpressionLambdaToSql(expExp.Body, new ExpTSC { _tables =
|
||||
@ -1652,7 +1652,7 @@ namespace FreeSql.Internal
|
||||
}
|
||||
return null;
|
||||
}
|
||||
internal class ReplaceVisitor : ExpressionVisitor
|
||||
public class ReplaceParameterVisitor : ExpressionVisitor
|
||||
{
|
||||
private ParameterExpression parameter;
|
||||
private ParameterExpression oldParameter;
|
||||
@ -1670,7 +1670,7 @@ namespace FreeSql.Internal
|
||||
}
|
||||
}
|
||||
|
||||
internal class ReplaceHzyTupleToMultiParam : ExpressionVisitor
|
||||
public class ReplaceHzyTupleToMultiParam : ExpressionVisitor
|
||||
{
|
||||
private List<SelectTableInfo> tables;
|
||||
private ParameterExpression[] parameters;
|
||||
|
@ -72,7 +72,7 @@ namespace FreeSql.Internal
|
||||
|
||||
var newParameter = Expression.Parameter(typeof(TEntity), $"gf{_id}");
|
||||
var newlambda = Expression.Lambda<Func<TEntity, bool>>(
|
||||
new CommonExpression.ReplaceVisitor().Modify(where, newParameter),
|
||||
new CommonExpression.ReplaceParameterVisitor().Modify(where, newParameter),
|
||||
newParameter
|
||||
);
|
||||
item.Where = newlambda;
|
||||
|
Reference in New Issue
Block a user