From 85a6ae49e4927c5befe5e19f28cf5ced4dbf9c9f Mon Sep 17 00:00:00 2001 From: 28810 <28810@YEXIANGQIN> Date: Fri, 13 Mar 2020 10:28:17 +0800 Subject: [PATCH] =?UTF-8?q?-=20=E4=BC=98=E5=8C=96=20BulkCopy=20=E5=AF=B9?= =?UTF-8?q?=E5=8F=AF=E7=A9=BA=E7=B1=BB=E5=9E=8B=E7=9A=84=E5=B1=9E=E6=80=A7?= =?UTF-8?q?=E5=A4=84=E7=90=86=EF=BC=9B#227?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- FreeSql/Internal/CommonProvider/InsertProvider.cs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/FreeSql/Internal/CommonProvider/InsertProvider.cs b/FreeSql/Internal/CommonProvider/InsertProvider.cs index 7553b8be..3a15daab 100644 --- a/FreeSql/Internal/CommonProvider/InsertProvider.cs +++ b/FreeSql/Internal/CommonProvider/InsertProvider.cs @@ -563,8 +563,11 @@ namespace FreeSql.Internal.CommonProvider var val = col.Item1.GetMapValue(d); if (col.Item3 == true) { - if (val == null) throw new Exception($"[{didx}].{col.Item1.CsName} 值不可为 null;DataTable 限制不可使用 int?/long? 可空类型,IInsert.ToDataTable 将映射成 int/long,因此不可接受 null 值"); - val = Utils.GetDataReaderValue(col.Item2, val); + //if (val == null) throw new Exception($"[{didx}].{col.Item1.CsName} 值不可为 null;DataTable 限制不可使用 int?/long? 可空类型,IInsert.ToDataTable 将映射成 int/long,因此不可接受 null 值"); + if (val == null) + val = DBNull.Value; + else + val = Utils.GetDataReaderValue(col.Item2, val); } row[rowIndex++] = val; }