diff --git a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/Common/ExpressionContextCase.cs b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/Common/ExpressionContextCase.cs new file mode 100644 index 000000000..f3efd54c9 --- /dev/null +++ b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/Common/ExpressionContextCase.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace SqlSugar +{ + public class ExpressionContextCase + { + public bool IsDateString { get; set; } + } +} diff --git a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ExpressionContext.cs b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ExpressionContext.cs index c72a49c79..227d7245a 100644 --- a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ExpressionContext.cs +++ b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ExpressionContext.cs @@ -19,6 +19,7 @@ namespace SqlSugar #endregion #region Properties + public virtual ExpressionContextCase Case{ get; set; } public ExpressionOutParameter SugarContext { get; set; } public IDbMethods DbMehtods { diff --git a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MemberExpressionResolve.cs b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MemberExpressionResolve.cs index 9fb156454..555792b3c 100644 --- a/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MemberExpressionResolve.cs +++ b/Src/Asp.NetCore2/SqlSugar/ExpressionsToSql/ResolveItems/MemberExpressionResolve.cs @@ -517,7 +517,14 @@ namespace SqlSugar var isConst = parameter.CommonTempData.GetType() == UtilConstants.DateType; if (isConst) { - AppendValue(parameter, isLeft, parameter.CommonTempData.ObjToDate().Date); + if (this.Context?.Case?.IsDateString==true) + { + AppendMember(parameter, isLeft, GetToDateShort("'" + parameter.CommonTempData.ObjToDate().Date.ToString("yyyy-MM-dd") + "'")); + } + else + { + AppendValue(parameter, isLeft, parameter.CommonTempData.ObjToDate().Date); + } } else { diff --git a/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteExpressionContext.cs b/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteExpressionContext.cs index 711b6bc39..ff8e14f84 100644 --- a/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteExpressionContext.cs +++ b/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteExpressionContext.cs @@ -4,6 +4,9 @@ namespace SqlSugar { public class SqliteExpressionContext : ExpressionContext, ILambdaExpressions { + public override ExpressionContextCase Case { get; set; } = new ExpressionContextCase() { + IsDateString= true, + }; public SqlSugarProvider Context { get; set; } public SqliteExpressionContext() {