From 88733d44130bb9964106b1f0d5bcfc96519d4dc7 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Wed, 14 Feb 2024 23:26:48 +0800 Subject: [PATCH] Update sqlite --- .../Sqlite/SqlBuilder/SqliteFastBuilder.cs | 8 ++++---- Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs | 11 +++++++++++ 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/Src/Asp.Net/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteFastBuilder.cs b/Src/Asp.Net/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteFastBuilder.cs index 8ffe51b0e..3e7e6fd57 100644 --- a/Src/Asp.Net/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteFastBuilder.cs +++ b/Src/Asp.Net/SqlSugar/Realization/Sqlite/SqlBuilder/SqliteFastBuilder.cs @@ -78,9 +78,9 @@ namespace SqlSugar { if (this.Context?.CurrentConnectionConfig?.MoreSettings?.IsCorrectErrorSqlParameterName == true) { - foreach (var item in dictionary) + foreach (DataRow item in dt.Rows) { - cmd.CommandText = this.Context.Insertable(item).AS(dt.TableName).ToSqlString().Replace(";SELECT LAST_INSERT_ROWID();", ""); + cmd.CommandText = this.Context.Insertable(UtilMethods.DataRowToDictionary(item)).AS(dt.TableName).ToSqlString().Replace(";SELECT LAST_INSERT_ROWID();", ""); i += await cmd.ExecuteNonQueryAsync(); } } @@ -117,9 +117,9 @@ namespace SqlSugar { if (this.Context?.CurrentConnectionConfig?.MoreSettings?.IsCorrectErrorSqlParameterName == true) { - foreach (var item in dictionary) + foreach (DataRow item in dt.Rows) { - cmd.CommandText = this.Context.Updateable(item) + cmd.CommandText = this.Context.Updateable(UtilMethods.DataRowToDictionary(item)) .WhereColumns(whereColums) .UpdateColumns(updateColums) .AS(dt.TableName).ToSqlString(); diff --git a/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs b/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs index b4766e908..1464e0acb 100644 --- a/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs +++ b/Src/Asp.Net/SqlSugar/Utilities/UtilMethods.cs @@ -18,7 +18,18 @@ namespace SqlSugar { public class UtilMethods { + public static Dictionary DataRowToDictionary(DataRow row) + { + Dictionary dictionary = new Dictionary(); + // 遍历所有列并将其添加到字典中 + foreach (DataColumn column in row.Table.Columns) + { + dictionary.Add(column.ColumnName, row[column]); + } + + return dictionary; + } public static IEnumerable BuildTree(ISqlSugarClient db,IEnumerable list, string idName, string pIdName, string childName, object rootValue) { var entityInfo = db.EntityMaintenance.GetEntityInfo(); ;