From db3f4b97f00170f4d0452e9b348a7106c67500b8 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Fri, 1 Dec 2023 15:50:37 +0800 Subject: [PATCH] Synchronization code --- .../Abstract/SqlBuilderProvider/InsertBuilder.cs | 8 ++++++++ .../Abstract/SqlBuilderProvider/UpdateBuilder.cs | 12 ++++++++++-- Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs | 11 ++++++++++- 3 files changed, 28 insertions(+), 3 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/InsertBuilder.cs b/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/InsertBuilder.cs index e6520730c..193eb1ab6 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/InsertBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/InsertBuilder.cs @@ -284,6 +284,14 @@ namespace SqlSugar { return LambdaExpressions.DbMehtods.GetDate(); } + else if (UtilMethods.IsErrorDecimalString() == true) + { + var pname = Builder.SqlParameterKeyWord + "Decimal" + GetDbColumnIndex; + var p = new SugarParameter(pname, columnInfo.Value); + this.Parameters.Add(p); + GetDbColumnIndex++; + return pname; + } else if (columnInfo.InsertSql.HasValue()) { return columnInfo.InsertSql; diff --git a/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/UpdateBuilder.cs b/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/UpdateBuilder.cs index 50eaf2785..53a8148f1 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/UpdateBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/SqlBuilderProvider/UpdateBuilder.cs @@ -426,11 +426,19 @@ namespace SqlSugar { return LambdaExpressions.DbMehtods.GetDate(); } - else if (IsListSetExp(columnInfo)|| IsSingleSetExp(columnInfo)) + else if (UtilMethods.IsErrorDecimalString()==true) + { + var pname = Builder.SqlParameterKeyWord + "Decimal" + GetDbColumnIndex; + var p = new SugarParameter(pname, columnInfo.Value); + this.Parameters.Add(p); + GetDbColumnIndex++; + return pname; + } + else if (IsListSetExp(columnInfo) || IsSingleSetExp(columnInfo)) { if (this.ReSetValueBySqlExpList[columnInfo.PropertyName].Type == ReSetValueBySqlExpListModelType.List) { - return Builder.GetTranslationColumnName(columnInfo.DbColumnName)+this.ReSetValueBySqlExpList[columnInfo.PropertyName].Sql+name; + return Builder.GetTranslationColumnName(columnInfo.DbColumnName) + this.ReSetValueBySqlExpList[columnInfo.PropertyName].Sql + name; } else { diff --git a/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs b/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs index 6ef2416b6..8c0e76db2 100644 --- a/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs +++ b/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs @@ -18,7 +18,16 @@ namespace SqlSugar { public class UtilMethods { - + internal static bool? _IsErrorDecimalString { get; set; } + internal static bool? IsErrorDecimalString() + { + if (_IsErrorDecimalString == null) + { + decimal dec = Convert.ToDecimal(1.1); + _IsErrorDecimalString = dec.ToString().Contains(","); + } + return _IsErrorDecimalString; + } internal static bool IsParameterConverter(EntityColumnInfo columnInfo) { return columnInfo != null && columnInfo.SqlParameterDbType != null && columnInfo.SqlParameterDbType is Type