diff --git a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs index 0522ff8bc..c22d04c5d 100644 --- a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlInsertBuilder.cs @@ -44,12 +44,11 @@ namespace SqlSugar var type = UtilMethods.GetUnderType(value.GetType()); if (type == UtilConstants.DateType) { - 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") + "'"; + return GetDateTimeString(value); + } + else if (value is DateTimeOffset) + { + return GetDateTimeOffsetString(value); } else if (type == UtilConstants.ByteArrayType) { @@ -84,6 +83,27 @@ namespace SqlSugar } } } + + 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") + "'"; + } + private string GetString(object value) { var result = value.ToString(); diff --git a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs index 7a6857324..66841140d 100644 --- a/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/MySql/SqlBuilder/MySqlUpdateBuilder.cs @@ -106,12 +106,11 @@ namespace SqlSugar var type = UtilMethods.GetUnderType(value.GetType()); if (type == UtilConstants.DateType) { - 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") + "'"; + return GetDateTimeString(value); + } + else if (value is DateTimeOffset) + { + return GetDateTimeOffsetString(value); } else if (type == UtilConstants.ByteArrayType) { @@ -154,6 +153,27 @@ namespace SqlSugar } } } + + 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") + "'"; + } + + 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 string GetString(object value) { var result = value.ToString();