From 250992de6597614e062c43b1c815bd1cc7bb91b3 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 11 Jul 2017 01:22:38 +0800 Subject: [PATCH] Updater Expression --- .../UnitTest/ExpressionTest/Select.cs | 12 ++++++ .../ResolveItems/BaseResolve.cs | 35 +++++++++++------- .../SqliteTest/DataBase/SqlSugar4xTest.sqlite | Bin 98304 -> 98304 bytes 3 files changed, 33 insertions(+), 14 deletions(-) diff --git a/Src/Asp.Net/SqlServerTest/UnitTest/ExpressionTest/Select.cs b/Src/Asp.Net/SqlServerTest/UnitTest/ExpressionTest/Select.cs index 203b59157..49fb06d90 100644 --- a/Src/Asp.Net/SqlServerTest/UnitTest/ExpressionTest/Select.cs +++ b/Src/Asp.Net/SqlServerTest/UnitTest/ExpressionTest/Select.cs @@ -23,6 +23,7 @@ namespace OrmTest.UnitTest { single(); single2(); + single3(); Multiple(); singleDynamic(); MultipleDynamic(); @@ -101,6 +102,17 @@ namespace OrmTest.UnitTest new SugarParameter("@Id2",11 ) }, "Select.single Error"); } + private void single3(int p = 1) + { + Expression> exp = it => new DataTestInfo() { Datetime1=DateTime.Now, String=it.Name}; + ExpressionContext expContext = new ExpressionContext(); + expContext.Resolve(exp, ResolveExpressType.SelectSingle); + var selectorValue = expContext.Result.GetString(); + var pars = expContext.Parameters; + base.Check( + @" @constant0 AS [Datetime1] , [Name] AS [String] ", null,selectorValue,null, + "Select.single3 Error"); + } private void singleDynamic() { diff --git a/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/BaseResolve.cs b/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/BaseResolve.cs index 13ceaba6f..0100e91da 100644 --- a/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/BaseResolve.cs +++ b/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/BaseResolve.cs @@ -216,7 +216,7 @@ namespace SqlSugar return methodCallExpressionArgs; } - protected void ResolveNewExpressions(ExpressionParameter parameter, Expression item, string memberName) + protected void ResolveNewExpressions(ExpressionParameter parameter, Expression item, string asName) { if (item.NodeType == ExpressionType.Constant) { @@ -224,23 +224,31 @@ namespace SqlSugar this.Start(); string parameterName = this.Context.SqlParameterKeyWord + "constant" + this.Context.ParameterIndex; this.Context.ParameterIndex++; - parameter.Context.Result.Append(this.Context.GetAsString(memberName, parameterName)); + parameter.Context.Result.Append(this.Context.GetAsString(asName, parameterName)); this.Context.Parameters.Add(new SugarParameter(parameterName, parameter.CommonTempData)); } + else if ((item is MemberExpression) && ((MemberExpression)item).Expression == null) + { + var paramterValue= ExpressionTool.GetPropertyValue(item as MemberExpression); + string parameterName = this.Context.SqlParameterKeyWord + "constant" + this.Context.ParameterIndex; + this.Context.ParameterIndex++; + parameter.Context.Result.Append(this.Context.GetAsString(asName, parameterName)); + this.Context.Parameters.Add(new SugarParameter(parameterName, paramterValue)); + } else if ((item is MemberExpression) && ((MemberExpression)item).Expression.NodeType == ExpressionType.Constant) { this.Expression = item; this.Start(); string parameterName = this.Context.SqlParameterKeyWord + "constant" + this.Context.ParameterIndex; this.Context.ParameterIndex++; - parameter.Context.Result.Append(this.Context.GetAsString(memberName, parameterName)); + parameter.Context.Result.Append(this.Context.GetAsString(asName, parameterName)); this.Context.Parameters.Add(new SugarParameter(parameterName, parameter.CommonTempData)); } else if (item is MethodCallExpression) { this.Expression = item; this.Start(); - parameter.Context.Result.Append(this.Context.GetAsString(memberName, parameter.CommonTempData.ObjToString())); + parameter.Context.Result.Append(this.Context.GetAsString(asName, parameter.CommonTempData.ObjToString())); } else if (item is MemberExpression) { @@ -252,7 +260,7 @@ namespace SqlSugar this.Expression = item; this.Start(); parameter.IsAppendResult(); - this.Context.Result.Append(this.Context.GetAsString(memberName, parameter.CommonTempData.ObjToString())); + this.Context.Result.Append(this.Context.GetAsString(asName, parameter.CommonTempData.ObjToString())); this.Context.Result.CurrentParameter = null; } } @@ -269,14 +277,14 @@ namespace SqlSugar this.Expression = item; this.Start(); parameter.IsAppendResult(); - this.Context.Result.Append(this.Context.GetAsString(memberName, parameter.CommonTempData.ObjToString())); + this.Context.Result.Append(this.Context.GetAsString(asName, parameter.CommonTempData.ObjToString())); this.Context.Result.CurrentParameter = null; } else if (expression.Expression is ConstantExpression) { string parameterName = this.Context.SqlParameterKeyWord + "constant" + this.Context.ParameterIndex; this.Context.ParameterIndex++; - parameter.Context.Result.Append(this.Context.GetAsString(memberName, parameterName)); + parameter.Context.Result.Append(this.Context.GetAsString(asName, parameterName)); this.Context.Parameters.Add(new SugarParameter(parameterName, ExpressionTool.GetMemberValue(expression.Member, expression))); } else @@ -287,7 +295,7 @@ namespace SqlSugar this.Expression = item; this.Start(); parameter.IsAppendResult(); - this.Context.Result.Append(this.Context.GetAsString(memberName, parameter.CommonTempData.ObjToString())); + this.Context.Result.Append(this.Context.GetAsString(asName, parameter.CommonTempData.ObjToString())); this.Context.Result.CurrentParameter = null; } } @@ -300,7 +308,7 @@ namespace SqlSugar this.Start(); string parameterName = this.Context.SqlParameterKeyWord + "constant" + this.Context.ParameterIndex; this.Context.ParameterIndex++; - parameter.Context.Result.Append(this.Context.GetAsString(memberName, parameterName)); + parameter.Context.Result.Append(this.Context.GetAsString(asName, parameterName)); this.Context.Parameters.Add(new SugarParameter(parameterName, parameter.CommonTempData)); } } @@ -317,7 +325,7 @@ namespace SqlSugar { this.Context.Parameters.AddRange(newContext.Parameters); } - this.Context.Result.Append(this.Context.GetAsString(memberName, newContext.Result.GetString())); + this.Context.Result.Append(this.Context.GetAsString(asName, newContext.Result.GetString())); this.Context.Result.CurrentParameter = null; } } @@ -329,9 +337,8 @@ namespace SqlSugar var listProperties = item.Type.GetProperties().Cast().ToList(); foreach (var property in listProperties) { - if (this.Context.IgnoreComumnList != null - && this.Context.IgnoreComumnList.Any( - it => it.EntityName == item.Type.Name && it.PropertyName == property.Name)) + var hasIgnore = this.Context.IgnoreComumnList != null && this.Context.IgnoreComumnList.Any(it => it.EntityName.Equals(item.Type.Name,StringComparison.CurrentCultureIgnoreCase) && it.PropertyName.Equals(property.Name,StringComparison.CurrentCultureIgnoreCase)); + if (hasIgnore) { continue; } @@ -341,7 +348,7 @@ namespace SqlSugar } else { - var asName = this.Context.GetTranslationText(item.Type.Name + "." + property.Name); + asName = this.Context.GetTranslationText(item.Type.Name + "." + property.Name); var columnName = property.Name; if (Context.IsJoin) { diff --git a/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite b/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite index 3c30a3f233fce156bb474f3645266f2a5944967c..e30537878188674cf5324613edd08966fc60eabf 100644 GIT binary patch literal 98304 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 JD&NFuDe{-I( zOaGhmj9vQQoM-IP|K>bnm;N{B8N2kqInUUo|IK;EF8y!LGj{2JbDptF|C{rSUHadg zXYA7d<~(DU{x|0tyY#;~&)B8^&3VQy{cp}QcIkg}p0P{+oAZoa`rn*q?9%_{JY$#s zH|H6<^uIaJ*ror?dB!gNZ_YDzZ{XJ-{^-*G<~(DU{x|0tyYznr{^-*G75Jk||5xCT zF8yDDKf3gP1^(#L{}uS7OaE8kk1qXRfj_$Re+B;N(*G6sqf7r+;Eyi-Ux7cm^nV5Z z=+gfc_@hhzSFpa(rT;5f-{{i+6|8S`>HiAWH@ftH1?wAK`oDtpjV}FP!TLs*{;yzt zqf7r+u)fiy|0`JE=+gfctZ#Jb{|eSOy7Yeq>lCRF8yD@`bL-juVDVsrT;6K ze{|`8bDptF|C{rSUHadgXYA7d70f@n^nV5Ok1qXR!Th63|5q^o=+gh@JY$#sFB^Z* z|7GJ3`oC=aLI0PHKj{Cm@dy21HvXXh%f=t{e;M0*A;VgGb7Kk2Z4x|pAI*gsv&Pde{6PZxgauz$MnONaf_g}{#mG0T82N@2OTMW$6idFT*A+{?sn--s zzNuFgOTMXB6idFTmlaFCsh7y`%hZdCCEwHwiY4FF^NNx0ImO6#P%-j7s~GtXC`P{h ziji-hV&vPq#17^sQ+pI6-)_aow@WedJ);=;o>q)}tj`_zWs3E=1HVkMK6l`ksVCIu zBi{}({4%v&G4egG82Pp-M!s>y$hTE7@;#;)`5sk_e2*wbzK0bf-$P`qZ%sX@82KJh zjC}ViM!x$LBj3G>k?$VG$hSo?^4+Z%`R-DTe4EKw-mvBi|j0k?(fJ z$akA!6cd26JyF@Yau|9X;k15vY4*W62`rLs( zrs#hM{+Ocw9r$DFeE$CM#}xhVz#miezXN|v(f33IhCkZ$zYTx1>3k z|7g?yHs&8~`rpRI#{8pA|J#^3m|82}a+VsB-f3)d;+o}G4u5Fxd