Browse Source

pgsql insert array null bug

pull/31/head
sunkaixuan 2 years ago
parent
commit
5e343ad892
  1. 25
      Src/Asp.Net/SqlSugar/Abstract/InsertableProvider/InsertableHelper.cs

25
Src/Asp.Net/SqlSugar/Abstract/InsertableProvider/InsertableHelper.cs

@ -123,6 +123,11 @@ namespace SqlSugar
if (item.IsArray)
{
paramters.IsArray = true;
if (item.Value == null || item.Value == DBNull.Value)
{
ArrayNull(item,paramters);
}
}
if (item.Value == null && isDic)
{
@ -137,6 +142,26 @@ namespace SqlSugar
}
}
}
private static void ArrayNull(DbColumnInfo item, SugarParameter parameter)
{
if (item.PropertyType.IsIn(typeof(Guid[]), typeof(Guid?[])))
{
parameter.DbType = System.Data.DbType.Guid;
}
else if (item.PropertyType.IsIn(typeof(int[]), typeof(int?[])))
{
parameter.DbType = System.Data.DbType.Int32;
}
else if (item.PropertyType.IsIn(typeof(long[]), typeof(long?[])))
{
parameter.DbType = System.Data.DbType.Int64;
}
else if (item.PropertyType.IsIn(typeof(short[]), typeof(short?[])))
{
parameter.DbType = System.Data.DbType.Int16;
}
}
internal void Init()
{
InsertBuilder.EntityInfo = this.EntityInfo;

Loading…
Cancel
Save