diff --git a/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/DefaultDbMethod.cs b/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/DefaultDbMethod.cs index 5b0c0c577..d90c9afb9 100644 --- a/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/DefaultDbMethod.cs +++ b/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/DefaultDbMethod.cs @@ -552,5 +552,9 @@ namespace SqlSugar var parameter4 = model.Args[3]; return $" STUFF ({parameter1.MemberName}, {parameter2.MemberName}, {parameter3.MemberName}, {parameter4.MemberName}) "; } + public string GetDateString(string dateValue) + { + return null; + } } } diff --git a/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/IDbMethods.cs b/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/IDbMethods.cs index d81e8af07..01aea3681 100644 --- a/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/IDbMethods.cs +++ b/Src/Asp.Net/SqlSugar/ExpressionsToSql/DbMethods/IDbMethods.cs @@ -86,5 +86,6 @@ namespace SqlSugar string Asc(MethodCallExpressionModel model); string Desc(MethodCallExpressionModel model); string Stuff(MethodCallExpressionModel model); + string GetDateString(string dateValue); } } diff --git a/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs b/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs index 3ffa6fb7f..dd75c9233 100644 --- a/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs +++ b/Src/Asp.Net/SqlSugar/ExpressionsToSql/ResolveItems/MethodCallExpressionResolve.cs @@ -325,8 +325,16 @@ namespace SqlSugar { var format = (args[0] as ConstantExpression).Value + ""; var value = GetNewExpressionValue(express.Object); - var dateString = GeDateFormat(format, value); - base.AppendValue(parameter, isLeft, dateString); + var dateString2=this.Context.DbMehtods.GetDateString(value); + if (dateString2 == null) + { + var dateString = GeDateFormat(format, value); + base.AppendValue(parameter, isLeft, dateString); + } + else + { + base.AppendValue(parameter, isLeft, dateString2); + } } else { @@ -900,6 +908,8 @@ namespace SqlSugar case "ToString": if (model.Args.Count > 1) { + var dateString2 = this.Context.DbMehtods.GetDateString(model.Args.First().MemberName.ObjToString()); + if (dateString2 != null) return dateString2; return GeDateFormat(model.Args.Last().MemberValue.ObjToString(), model.Args.First().MemberName.ObjToString()); } //Check.Exception(model.Args.Count > 1, "ToString (Format) is not supported, Use ToString().If time formatting can be used it.Date.Year+\"-\"+it.Data.Month+\"-\"+it.Date.Day ");