Add Queryable.InIF

This commit is contained in:
sunkaixuan 2022-10-07 22:43:15 +08:00
parent 0a97544267
commit 0143f31b0a
2 changed files with 38 additions and 0 deletions

View File

@ -742,6 +742,14 @@ namespace SqlSugar
if (list == null) return default(T);
else return list.SingleOrDefault();
}
public ISugarQueryable<T> InIF<TParamter>(bool isIn, params TParamter[] pkValues)
{
if (isIn)
{
In(pkValues);
}
return this;
}
public virtual ISugarQueryable<T> In<TParamter>(params TParamter[] pkValues)
{
if (pkValues == null || pkValues.Length == 0)
@ -3898,6 +3906,14 @@ namespace SqlSugar
#endregion
#region In
public new ISugarQueryable<T,T2> InIF<TParamter>(bool isIn, params TParamter[] pkValues)
{
if (isIn)
{
In(pkValues);
}
return this;
}
public new ISugarQueryable<T, T2> In<FieldType>(Expression<Func<T, object>> expression, params FieldType[] inValues)
{
QueryBuilder.CheckExpression(expression, "In");
@ -4422,6 +4438,14 @@ namespace SqlSugar
#endregion
#region In
public new ISugarQueryable<T, T2,T3> InIF<TParamter>(bool isIn, params TParamter[] pkValues)
{
if (isIn)
{
In(pkValues);
}
return this;
}
public new ISugarQueryable<T, T2, T3> In<FieldType>(Expression<Func<T, object>> expression, params FieldType[] inValues)
{
QueryBuilder.CheckExpression(expression, "In");
@ -5005,6 +5029,14 @@ namespace SqlSugar
#endregion
#region In
public new ISugarQueryable<T, T2,T3,T4> InIF<TParamter>(bool isIn, params TParamter[] pkValues)
{
if (isIn)
{
In(pkValues);
}
return this;
}
public new ISugarQueryable<T, T2, T3, T4> In<FieldType>(Expression<Func<T, object>> expression, params FieldType[] inValues)
{
QueryBuilder.CheckExpression(expression, "In");

View File

@ -78,6 +78,7 @@ namespace SqlSugar
T InSingle(object pkValue);
Task<T> InSingleAsync(object pkValue);
ISugarQueryable<T> In<TParamter>(params TParamter[] pkValues);
ISugarQueryable<T> InIF<TParamter>(bool isIn,params TParamter[] pkValues);
ISugarQueryable<T> In<FieldType>(string InFieldName, params FieldType[] inValues);
ISugarQueryable<T> In<FieldType>(Expression<Func<T, object>> expression, params FieldType[] inValues);
ISugarQueryable<T> In<TParamter>(List<TParamter> pkValues);
@ -291,6 +292,7 @@ namespace SqlSugar
ISugarQueryable<T, T2> In<FieldType>(Expression<Func<T,T2, object>> expression, params FieldType[] inValues);
ISugarQueryable<T, T2> In<FieldType>(Expression<Func<T,T2, object>> expression, List<FieldType> inValues);
ISugarQueryable<T, T2> In<FieldType>(Expression<Func<T,T2, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
new ISugarQueryable<T,T2> InIF<TParamter>(bool isIn, params TParamter[] pkValues);
#endregion
#region Other
@ -404,6 +406,8 @@ namespace SqlSugar
ISugarQueryable<T, T2, T3> In<FieldType>(Expression<Func<T, T2,T3, object>> expression, params FieldType[] inValues);
ISugarQueryable<T, T2, T3> In<FieldType>(Expression<Func<T, T2,T3, object>> expression, List<FieldType> inValues);
ISugarQueryable<T, T2, T3> In<FieldType>(Expression<Func<T, T2,T3, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
new ISugarQueryable<T, T2,T3> InIF<TParamter>(bool isIn, params TParamter[] pkValues);
#endregion
#region Other
@ -528,6 +532,8 @@ namespace SqlSugar
ISugarQueryable<T, T2, T3, T4> In<FieldType>(Expression<Func<T, T2, T3,T4, object>> expression, params FieldType[] inValues);
ISugarQueryable<T, T2, T3, T4> In<FieldType>(Expression<Func<T, T2, T3,T4, object>> expression, List<FieldType> inValues);
ISugarQueryable<T, T2, T3, T4> In<FieldType>(Expression<Func<T, T2, T3,T4, object>> expression, ISugarQueryable<FieldType> childQueryExpression);
new ISugarQueryable<T, T2,T3,T4> InIF<TParamter>(bool isIn, params TParamter[] pkValues);
#endregion
#region Other