Browse Source

Add constraints (Updateable)

SqlSugar5
sunkaixuan 2 years ago
parent
commit
0e7cd00873
  1. 9
      Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableHelper.cs
  2. 4
      Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableProvider.cs

9
Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableHelper.cs

@ -32,6 +32,7 @@ namespace SqlSugar
}
private string _ExecuteCommand()
{
CheckWhere();
PreToSql();
AutoRemoveDataCache();
Check.Exception(UpdateBuilder.WhereValues.IsNullOrEmpty() && GetPrimaryKeys().IsNullOrEmpty(), "You cannot have no primary key and no conditions");
@ -42,6 +43,14 @@ namespace SqlSugar
return sql;
}
private void CheckWhere()
{
if (UpdateParameterIsNull && UpdateBuilder.WhereValues.IsNullOrEmpty())
{
Check.ExceptionEasy("Update requires conditions", "更新需要条件 Where");
}
}
private void _WhereColumn(string columnName)
{
var columnInfos = columns.Where(it => it.DbColumnName.Equals(columnName, StringComparison.OrdinalIgnoreCase) || it.PropertyName.Equals(columnName, StringComparison.OrdinalIgnoreCase)).ToList();

4
Src/Asp.Net/SqlSugar/Abstract/UpdateProvider/UpdateableProvider.cs

@ -18,6 +18,10 @@ namespace SqlSugar
public UpdateBuilder UpdateBuilder { get; set; }
public IAdo Ado { get { return Context.Ado; } }
public T[] UpdateObjs { get; set; }
/// <summary>
/// true : by expression update
/// false: by object update
/// </summary>
public bool UpdateParameterIsNull { get; set; }
public bool IsMappingTable { get { return this.Context.MappingTables != null && this.Context.MappingTables.Any(); } }
public bool IsMappingColumns { get { return this.Context.MappingColumns != null && this.Context.MappingColumns.Any(); } }

Loading…
Cancel
Save