Deleteable & Updateable .Where(List<ConditionalModel>)

This commit is contained in:
sunkaixuna
2021-07-19 20:02:02 +08:00
parent e8830d59b8
commit 8ed1c1579c
5 changed files with 20 additions and 0 deletions

View File

@@ -230,6 +230,14 @@ namespace SqlSugar
return this;
}
public IDeleteable<T> Where(List<IConditionalModel> conditionalModels)
{
var sql = this.Context.Queryable<T>().SqlBuilder.ConditionalModelToSql(conditionalModels);
var result = this;
result.Where(sql.Key, sql.Value);
return result;
}
public IDeleteable<T> RemoveDataCache()
{
this.RemoveCacheFunc = () =>

View File

@@ -345,6 +345,14 @@ namespace SqlSugar
UpdateBuilder.WhereValues.Add(whereString);
return this;
}
public IUpdateable<T> Where(List<IConditionalModel> conditionalModels)
{
Check.Exception(UpdateObjectNotWhere() && UpdateObjs.Length > 1, ErrorMessage.GetThrowMessage("update List no support where", "集合更新不支持Where请使用WhereColumns"));
var sql = this.Context.Queryable<T>().SqlBuilder.ConditionalModelToSql(conditionalModels);
var result = this;
result.Where(sql.Key, sql.Value);
return result;
}
public IUpdateable<T> Where(string whereSql, object parameters = null)
{
Check.Exception(UpdateObjectNotWhere() && UpdateObjs.Length > 1, ErrorMessage.GetThrowMessage("update List no support where", "集合更新不支持Where请使用WhereColumns"));

View File

@@ -22,6 +22,8 @@ namespace SqlSugar
public string FieldName { get; set; }
public string FieldValue { get; set; }
public ConditionalType ConditionalType { get; set; }
[System.Text.Json.Serialization.JsonIgnoreAttribute]
[Newtonsoft.Json.JsonIgnoreAttribute]
public Func<string,object> FieldValueConvertFunc { get; set; }
}
}

View File

@@ -30,6 +30,7 @@ namespace SqlSugar
IDeleteable<T> Where(string whereString, SugarParameter[] parameters);
IDeleteable<T> Where(string whereString, List<SugarParameter> parameters);
IDeleteable<T> WhereColumns(Expression<Func<T, object>> columns);
IDeleteable<T> Where(List<IConditionalModel> conditionalModels);
IDeleteable<T> EnableDiffLogEvent(object businessData = null);
IDeleteable<T> RemoveDataCache();
IDeleteable<T> RemoveDataCache(string likeString);

View File

@@ -43,6 +43,7 @@ namespace SqlSugar
IUpdateable<T> WhereColumns(Expression<Func<T, object>> columns);
IUpdateable<T> WhereColumns(string columnName);
IUpdateable<T> WhereColumns(params string [] columnNames);
IUpdateable<T> Where(List<IConditionalModel> conditionalModels);
/// <summary>
/// .UpdateColumns(it=>new{ it.Name,it.Price})