diff --git a/Src/Asp.Net/SqlServerTest/Demos/1_Query.cs b/Src/Asp.Net/SqlServerTest/Demos/1_Query.cs index 645122b11..bc7a7ab1f 100644 --- a/Src/Asp.Net/SqlServerTest/Demos/1_Query.cs +++ b/Src/Asp.Net/SqlServerTest/Demos/1_Query.cs @@ -40,8 +40,9 @@ namespace OrmTest.Demo private static void Subqueryable() { var db = GetInstance(); - var getAll11 = db.Queryable().Where(it => SqlFunc.Subqueryable().Where(s => s.Id == it.Id).Max(s=>s.Id)==1).ToList(); - + var i = 0; + var getAll11 = db.Queryable().Where(it => SqlFunc.Subqueryable().Where(s => s.Id == it.Id).Max(s=>s.Id)==i).ToList(); + var getAll12 = db.Queryable().Where(it => SqlFunc.Subqueryable().Where(s => s.Id == it.Id).Max(s => s.Id) == 1).ToList(); var getAll7 = db.Queryable().Where(it => SqlFunc.Subqueryable().Where(s => s.Id == it.Id).Any()).ToList(); var getAll9 = db.Queryable().Where(it => SqlFunc.Subqueryable().Where(s => s.Id == it.Id).Count()==1).ToList(); diff --git a/Src/Asp.Net/SqlSugar/ExpressionsToSql/Subquery/SubResolve.cs b/Src/Asp.Net/SqlSugar/ExpressionsToSql/Subquery/SubResolve.cs index 4897cfd05..6fc3f0039 100644 --- a/Src/Asp.Net/SqlSugar/ExpressionsToSql/Subquery/SubResolve.cs +++ b/Src/Asp.Net/SqlSugar/ExpressionsToSql/Subquery/SubResolve.cs @@ -25,7 +25,11 @@ namespace SqlSugar if (context.IsSingle && oppsiteExpression != null && oppsiteExpression is MemberExpression) { var childExpression = (oppsiteExpression as MemberExpression).Expression; - this.context.SingleTableNameSubqueryShortName = (childExpression as ParameterExpression).Name; + if (childExpression is ParameterExpression) + this.context.SingleTableNameSubqueryShortName = (childExpression as ParameterExpression).Name; + else { + this.context.SingleTableNameSubqueryShortName = (context.Expression as LambdaExpression).Parameters.First().Name; + } } else if (context.IsSingle) { diff --git a/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite b/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite index 915346e26..8670e3eba 100644 Binary files a/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite and b/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite differ