Add Queryable.InIF

This commit is contained in:
sunkaixuan 2023-04-22 10:03:09 +08:00
parent e2b48f368a
commit 7d932677b0
2 changed files with 11 additions and 0 deletions

View File

@ -1006,6 +1006,16 @@ namespace SqlSugar
return In(expression, inValues.ToArray()); return In(expression, inValues.ToArray());
} }
public ISugarQueryable<T> InIF<FieldType>(bool isWhere,Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression)
{
if (isWhere)
{
var sqlObj = childQueryExpression.ToSql();
_InQueryable(expression, sqlObj);
}
return this;
}
public virtual ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression) public virtual ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression)
{ {
var sqlObj = childQueryExpression.ToSql(); var sqlObj = childQueryExpression.ToSql();

View File

@ -101,6 +101,7 @@ namespace SqlSugar
ISugarQueryable<T> In<FieldType>(string InFieldName, List<FieldType> inValues); ISugarQueryable<T> In<FieldType>(string InFieldName, List<FieldType> inValues);
ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues); ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, List<FieldType> inValues);
ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression); ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
ISugarQueryable<T> InIF<FieldType>(bool isWhere,Expression<Func<T, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
ISugarQueryable<T> OrderBy(string orderFileds); ISugarQueryable<T> OrderBy(string orderFileds);
ISugarQueryable<T> OrderBy(Expression<Func<T, object>> expression, OrderByType type = OrderByType.Asc); ISugarQueryable<T> OrderBy(Expression<Func<T, object>> expression, OrderByType type = OrderByType.Asc);