IgnoreColumns bug

This commit is contained in:
sunkaixuan 2019-03-28 21:39:39 +08:00
parent 5b4539836d
commit 023d9e3049
3 changed files with 51 additions and 0 deletions

View File

@ -77,6 +77,24 @@ namespace OrmTest.BugTest
.With(SqlWith.NoLock)
.ToSql();
var _sql = DB.Insertable(new UserInfo
{
BrandId = -1,
UserLevel = 1
}).IgnoreColumns(m => new { m.BlockingTime, m.CreditUpdatetime }).ToSql();
var _sql2 = DB.Insertable(new UserInfo
{
BrandId = -1,
UserLevel = 1
}).IgnoreColumns(m => new { m.UserId }).ToSql();
var _sql3 = DB.Updateable(new UserInfo
{
BrandId = -1,
UserLevel = 1
}).IgnoreColumns(m => new { m.CreditUpdatetime,m.UserId }).ToSql();
}
}
@ -119,5 +137,36 @@ namespace OrmTest.BugTest
public int RoleId { get; set; }
}
/// <summary>
/// VmallUser 实体
/// </summary>
[SugarTable("vmall_user")]
public class UserInfo
{
#region
public int UserId { get; set; }
/// <summary>
///
/// </summary>
[SugarColumn(ColumnName = "brand_id")]
public int BrandId { get; set; }
/// <summary>
/// 用户等级1普通 2高级 0黑名单
/// </summary>
[SugarColumn(ColumnName = "user_level")]
public byte UserLevel { get; set; }
/// <summary>
/// 拉黑时间
/// </summary>
[SugarColumn(ColumnName = "blocking_time")]
public DateTime BlockingTime { get; set; }
/// <summary>
///
/// </summary>
[SugarColumn(ColumnName = "credit_updatetime")]
public DateTime CreditUpdatetime { get; set; }
#endregion
}
}

View File

@ -184,6 +184,7 @@ namespace SqlSugar
{
var ignoreColumns = InsertBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it)).ToList();
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Any(ig => ig.Equals(it.PropertyName, StringComparison.CurrentCultureIgnoreCase))).ToList();
this.InsertBuilder.DbColumnInfoList = this.InsertBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Any(ig => ig.Equals(it.DbColumnName, StringComparison.CurrentCultureIgnoreCase))).ToList();
return this;
}
public IInsertable<T> IgnoreColumns(Func<string, bool> ignoreColumMethod)

View File

@ -119,6 +119,7 @@ namespace SqlSugar
{
var ignoreColumns = UpdateBuilder.GetExpressionValue(columns, ResolveExpressType.ArraySingle).GetResultArray().Select(it => this.SqlBuilder.GetNoTranslationColumnName(it).ToLower()).ToList();
this.UpdateBuilder.DbColumnInfoList = this.UpdateBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.PropertyName.ToLower())).ToList();
this.UpdateBuilder.DbColumnInfoList = this.UpdateBuilder.DbColumnInfoList.Where(it => !ignoreColumns.Contains(it.DbColumnName.ToLower())).ToList();
return this;
}