From 895f1079c000f8a993e359865bb3ee29aea02ddb Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Mon, 29 Aug 2022 12:26:26 +0800 Subject: [PATCH] Update .net core project --- .../Abstract/DbMaintenanceProvider/Methods.cs | 4 +++ .../Sqlite/SqlBuilder/SqliteInsertBuilder.cs | 26 ++++++++++++++++++- .../Realization/Sqlite/SqliteProvider.cs | 6 +++++ 3 files changed, 35 insertions(+), 1 deletion(-) diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs index 29aa126ee..c994462d3 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/DbMaintenanceProvider/Methods.cs @@ -378,6 +378,10 @@ namespace SqlSugar { defaultValue = ""; } + if (defaultValue.IsDate()) + { + defaultValue = "'" + defaultValue + "'"; + } string sql = string.Format(AddDefaultValueSql, tableName, columnName,defaultValue); this.Context.Ado.ExecuteCommand(sql); return true; diff --git a/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteInsertBuilder.cs b/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteInsertBuilder.cs index 61ac86dd5..9512ef1fe 100644 --- a/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteInsertBuilder.cs +++ b/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteInsertBuilder.cs @@ -116,6 +116,10 @@ namespace SqlSugar return Convert.ToInt64(value); } } + else if (type == UtilConstants.DateTimeOffsetType) + { + return GetDateTimeOffsetString(value); + } else if (type == UtilConstants.ByteArrayType) { var parameterName = this.Builder.SqlParameterKeyWord + name + i; @@ -132,9 +136,29 @@ namespace SqlSugar } else { - return "'"+value.ToString() + "'"; + return "'" + value.ToString() + "'"; } } } + + private object GetDateTimeOffsetString(object value) + { + var date = UtilMethods.ConvertFromDateTimeOffset((DateTimeOffset)value); + if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) + { + date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); + } + return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + } + + private object GetDateTimeString(object value) + { + var date = value.ObjToDate(); + if (date < UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig)) + { + date = UtilMethods.GetMinDate(this.Context.CurrentConnectionConfig); + } + return "'" + date.ToString("yyyy-MM-dd HH:mm:ss.fff") + "'"; + } } } diff --git a/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqliteProvider.cs b/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqliteProvider.cs index 953f1ffaf..68172784d 100644 --- a/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqliteProvider.cs +++ b/Src/Asp.NetCore2/SqlSugar/Realization/Sqlite/SqliteProvider.cs @@ -115,6 +115,12 @@ namespace SqlSugar { sqlParameter.DbType = System.Data.DbType.AnsiString; } + else if (parameter.DbType == System.Data.DbType.DateTimeOffset) + { + if (sqlParameter.Value != DBNull.Value) + sqlParameter.Value = UtilMethods.ConvertFromDateTimeOffset((DateTimeOffset)sqlParameter.Value); + sqlParameter.DbType = System.Data.DbType.DateTime; + } ++index; } return result;