mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-07-15 23:13:42 +08:00
Update ConditionalModelToSql
This commit is contained in:
parent
68c0435619
commit
31164e19d1
@ -37,13 +37,22 @@ namespace OrmTest.Demo
|
|||||||
private static void ConditionalModel()
|
private static void ConditionalModel()
|
||||||
{
|
{
|
||||||
var db = GetInstance();
|
var db = GetInstance();
|
||||||
List<ConditionalModel> conModels = new List<ConditionalModel>();
|
List<IConditionalModel> conModels = new List<IConditionalModel>();
|
||||||
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Equal, FieldValue = "1" });
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Equal, FieldValue = "1" });//id=1
|
||||||
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Like, FieldValue = "1" });
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Like, FieldValue = "1" });// id like '%1%'
|
||||||
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.IsNullOrEmpty });
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.IsNullOrEmpty });
|
||||||
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.In,FieldValue="1,2,3" });
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.In,FieldValue="1,2,3" });
|
||||||
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.NotIn, FieldValue = "1,2,3" });
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.NotIn, FieldValue = "1,2,3" });
|
||||||
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.NoEqual, FieldValue = "1,2,3" });
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.NoEqual, FieldValue = "1,2,3" });
|
||||||
|
conModels.Add(new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.IsNot,FieldValue=null});// id is not null
|
||||||
|
|
||||||
|
conModels.Add(new ConditionalCollections() { ConditionalList=new List<KeyValuePair<WhereType, SqlSugar.ConditionalModel>>()// (id=1 or id=2 and id=1)
|
||||||
|
{
|
||||||
|
new KeyValuePair<WhereType, ConditionalModel>( WhereType.Or ,new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Equal, FieldValue = "1" }),
|
||||||
|
new KeyValuePair<WhereType, ConditionalModel> (WhereType.And,new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Equal, FieldValue = "2" }),
|
||||||
|
new KeyValuePair<WhereType, ConditionalModel> ( WhereType.And,new ConditionalModel() { FieldName = "id", ConditionalType = ConditionalType.Equal, FieldValue = "2" })
|
||||||
|
}
|
||||||
|
});
|
||||||
var student = db.Queryable<Student>().Where(conModels).ToList();
|
var student = db.Queryable<Student>().Where(conModels).ToList();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -122,7 +122,7 @@ namespace SqlSugar
|
|||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
public virtual ISugarQueryable<T> Where(List<ConditionalModel> conditionalModels)
|
public virtual ISugarQueryable<T> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
if (conditionalModels.IsNullOrEmpty()) return this;
|
if (conditionalModels.IsNullOrEmpty()) return this;
|
||||||
var sqlObj = this.Context.Utilities.ConditionalModelToSql(conditionalModels);
|
var sqlObj = this.Context.Utilities.ConditionalModelToSql(conditionalModels);
|
||||||
@ -1240,7 +1240,7 @@ namespace SqlSugar
|
|||||||
Where<T>(whereString, whereObj);
|
Where<T>(whereString, whereObj);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -1567,7 +1567,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -1749,7 +1749,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -2063,7 +2063,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -2380,7 +2380,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -2687,7 +2687,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -3021,7 +3021,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -3387,7 +3387,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -3765,7 +3765,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -4179,7 +4179,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
@ -4605,7 +4605,7 @@ namespace SqlSugar
|
|||||||
_Where(expression);
|
_Where(expression);
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(List<ConditionalModel> conditionalModels)
|
public new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(List<IConditionalModel> conditionalModels)
|
||||||
{
|
{
|
||||||
base.Where(conditionalModels);
|
base.Where(conditionalModels);
|
||||||
return this;
|
return this;
|
||||||
|
@ -5,7 +5,15 @@ using System.Text;
|
|||||||
|
|
||||||
namespace SqlSugar
|
namespace SqlSugar
|
||||||
{
|
{
|
||||||
public class ConditionalModel
|
public interface IConditionalModel {
|
||||||
|
|
||||||
|
}
|
||||||
|
public class ConditionalCollections : IConditionalModel
|
||||||
|
{
|
||||||
|
public List<KeyValuePair<WhereType, ConditionalModel>> ConditionalList { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ConditionalModel: IConditionalModel
|
||||||
{
|
{
|
||||||
public ConditionalModel()
|
public ConditionalModel()
|
||||||
{
|
{
|
||||||
|
@ -18,6 +18,7 @@ namespace SqlSugar
|
|||||||
LikeLeft=8,
|
LikeLeft=8,
|
||||||
LikeRight=9,
|
LikeRight=9,
|
||||||
NoEqual=10,
|
NoEqual=10,
|
||||||
IsNullOrEmpty=11
|
IsNullOrEmpty=11,
|
||||||
|
IsNot=12
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
13
Src/Asp.Net/SqlSugar/Enum/WhereType.cs
Normal file
13
Src/Asp.Net/SqlSugar/Enum/WhereType.cs
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace SqlSugar
|
||||||
|
{
|
||||||
|
public enum WhereType
|
||||||
|
{
|
||||||
|
And=0,
|
||||||
|
Or=1
|
||||||
|
}
|
||||||
|
}
|
@ -160,10 +160,12 @@ namespace SqlSugar
|
|||||||
{
|
{
|
||||||
Dictionary<string, object> result = new Dictionary<string, object>();
|
Dictionary<string, object> result = new Dictionary<string, object>();
|
||||||
var type = item.PropertyType;
|
var type = item.PropertyType;
|
||||||
if (UtilConstants.SugarType == type) {
|
if (UtilConstants.SugarType == type)
|
||||||
|
{
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
if (type.FullName.IsCollectionsList()) {
|
if (type.FullName.IsCollectionsList())
|
||||||
|
{
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
var classProperties = type.GetProperties().ToList();
|
var classProperties = type.GetProperties().ToList();
|
||||||
@ -295,74 +297,122 @@ namespace SqlSugar
|
|||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Query
|
#region Query
|
||||||
public KeyValuePair<string, SugarParameter[]> ConditionalModelToSql(List<ConditionalModel> models)
|
public KeyValuePair<string, SugarParameter[]> ConditionalModelToSql(List<IConditionalModel> models,int beginIndex=0)
|
||||||
{
|
{
|
||||||
if (models.IsNullOrEmpty()) return new KeyValuePair<string, SugarParameter[]>();
|
if (models.IsNullOrEmpty()) return new KeyValuePair<string, SugarParameter[]>();
|
||||||
StringBuilder builder = new StringBuilder();
|
StringBuilder builder = new StringBuilder();
|
||||||
List<SugarParameter> parameters = new List<SugarParameter>();
|
List<SugarParameter> parameters = new List<SugarParameter>();
|
||||||
var sqlBuilder = InstanceFactory.GetSqlbuilder(this.Context.CurrentConnectionConfig);
|
var sqlBuilder = InstanceFactory.GetSqlbuilder(this.Context.CurrentConnectionConfig);
|
||||||
foreach (var item in models)
|
foreach (var model in models)
|
||||||
{
|
{
|
||||||
var index = models.IndexOf(item);
|
if (model is ConditionalModel)
|
||||||
var type = index == 0 ? "" : "AND";
|
|
||||||
string temp = " {0} {1} {2} {3} ";
|
|
||||||
string parameterName = string.Format("{0}Conditional{1}{2}", sqlBuilder.SqlParameterKeyWord, item.FieldName, index);
|
|
||||||
switch (item.ConditionalType)
|
|
||||||
{
|
{
|
||||||
case ConditionalType.Equal:
|
var item = model as ConditionalModel;
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "=", parameterName);
|
var index = models.IndexOf(item)+ beginIndex;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
var type = index == 0 ? "" : "AND";
|
||||||
break;
|
if (beginIndex > 0) {
|
||||||
case ConditionalType.Like:
|
type = null;
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "LIKE", parameterName);
|
}
|
||||||
parameters.Add(new SugarParameter(parameterName, "%" + item.FieldValue + "%"));
|
string temp = " {0} {1} {2} {3} ";
|
||||||
break;
|
string parameterName = string.Format("{0}Conditional{1}{2}", sqlBuilder.SqlParameterKeyWord, item.FieldName, index);
|
||||||
case ConditionalType.GreaterThan:
|
switch (item.ConditionalType)
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), ">", parameterName);
|
{
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.Equal:
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "=", parameterName);
|
||||||
case ConditionalType.GreaterThanOrEqual:
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), ">=", parameterName);
|
break;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.Like:
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "LIKE", parameterName);
|
||||||
case ConditionalType.LessThan:
|
parameters.Add(new SugarParameter(parameterName, "%" + item.FieldValue + "%"));
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<", parameterName);
|
break;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.GreaterThan:
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), ">", parameterName);
|
||||||
case ConditionalType.LessThanOrEqual:
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<=", parameterName);
|
break;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.GreaterThanOrEqual:
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), ">=", parameterName);
|
||||||
case ConditionalType.In:
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
if (item.FieldValue == null) item.FieldValue = string.Empty;
|
break;
|
||||||
var inValue1 = ("(" + item.FieldValue.Split(',').ToJoinSqlInVals() + ")");
|
case ConditionalType.LessThan:
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "IN", inValue1);
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<", parameterName);
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
break;
|
break;
|
||||||
case ConditionalType.NotIn:
|
case ConditionalType.LessThanOrEqual:
|
||||||
if (item.FieldValue == null) item.FieldValue = string.Empty;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<=", parameterName);
|
||||||
var inValue2 = ("(" + item.FieldValue.Split(',').ToJoinSqlInVals() + ")");
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "NOT IN", inValue2);
|
break;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.In:
|
||||||
break;
|
if (item.FieldValue == null) item.FieldValue = string.Empty;
|
||||||
case ConditionalType.LikeLeft:
|
var inValue1 = ("(" + item.FieldValue.Split(',').ToJoinSqlInVals() + ")");
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "LIKE", parameterName);
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "IN", inValue1);
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue + "%"));
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
break;
|
break;
|
||||||
case ConditionalType.LikeRight:
|
case ConditionalType.NotIn:
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "LIKE", parameterName);
|
if (item.FieldValue == null) item.FieldValue = string.Empty;
|
||||||
parameters.Add(new SugarParameter(parameterName, "%" + item.FieldValue));
|
var inValue2 = ("(" + item.FieldValue.Split(',').ToJoinSqlInVals() + ")");
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "NOT IN", inValue2);
|
||||||
case ConditionalType.NoEqual:
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<>", parameterName);
|
break;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.LikeLeft:
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "LIKE", parameterName);
|
||||||
case ConditionalType.IsNullOrEmpty:
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue + "%"));
|
||||||
builder.AppendFormat("{0} ({1}) OR ({2}) ", type, item.FieldName.ToSqlFilter() + " IS NULL ", item.FieldName.ToSqlFilter() + " = '' ");
|
break;
|
||||||
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
case ConditionalType.LikeRight:
|
||||||
break;
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "LIKE", parameterName);
|
||||||
default:
|
parameters.Add(new SugarParameter(parameterName, "%" + item.FieldValue));
|
||||||
break;
|
break;
|
||||||
|
case ConditionalType.NoEqual:
|
||||||
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<>", parameterName);
|
||||||
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
|
break;
|
||||||
|
case ConditionalType.IsNullOrEmpty:
|
||||||
|
builder.AppendFormat("{0} ({1}) OR ({2}) ", type, item.FieldName.ToSqlFilter() + " IS NULL ", item.FieldName.ToSqlFilter() + " = '' ");
|
||||||
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
|
break;
|
||||||
|
case ConditionalType.IsNot:
|
||||||
|
if (item.FieldValue == null)
|
||||||
|
{
|
||||||
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), " IS NOT ", "NULL");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
builder.AppendFormat(temp, type, item.FieldName.ToSqlFilter(), "<>", parameterName);
|
||||||
|
parameters.Add(new SugarParameter(parameterName, item.FieldValue));
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
var item = model as ConditionalCollections;
|
||||||
|
if (item != null)
|
||||||
|
{
|
||||||
|
foreach (var con in item.ConditionalList)
|
||||||
|
{
|
||||||
|
var index = item.ConditionalList.IndexOf(con);
|
||||||
|
var isFirst = index == 0;
|
||||||
|
var isLast = index == (item.ConditionalList.Count - 1);
|
||||||
|
if (isFirst)
|
||||||
|
{
|
||||||
|
builder.Append(" AND( ");
|
||||||
|
}
|
||||||
|
List<IConditionalModel> conModels = new List<IConditionalModel>();
|
||||||
|
conModels.Add(con.Value);
|
||||||
|
var childSqlInfo = ConditionalModelToSql(conModels,1000*(1+index));
|
||||||
|
builder.Append(childSqlInfo.Key);
|
||||||
|
parameters.AddRange(childSqlInfo.Value);
|
||||||
|
if (isLast)
|
||||||
|
{
|
||||||
|
builder.Append(" ) ");
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
|
||||||
|
builder.AppendFormat(" {0} ", con.Key.ToString().ToUpper());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return new KeyValuePair<string, SugarParameter[]>(builder.ToString(), parameters.ToArray());
|
return new KeyValuePair<string, SugarParameter[]>(builder.ToString(), parameters.ToArray());
|
||||||
|
@ -23,7 +23,7 @@ namespace SqlSugar
|
|||||||
void RemoveCacheAll();
|
void RemoveCacheAll();
|
||||||
void RemoveCacheAll<T>();
|
void RemoveCacheAll<T>();
|
||||||
void RemoveCache<T>(string key);
|
void RemoveCache<T>(string key);
|
||||||
KeyValuePair<string, SugarParameter[]> ConditionalModelToSql(List<ConditionalModel> models);
|
KeyValuePair<string, SugarParameter[]> ConditionalModelToSql(List<IConditionalModel> models,int beginIndex=0);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -26,7 +26,7 @@ namespace SqlSugar
|
|||||||
|
|
||||||
ISugarQueryable<T> Where(Expression<Func<T, bool>> expression);
|
ISugarQueryable<T> Where(Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T> Where(string whereString, object whereObj = null);
|
ISugarQueryable<T> Where(string whereString, object whereObj = null);
|
||||||
ISugarQueryable<T> Where(List<ConditionalModel> conditionalModels);
|
ISugarQueryable<T> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
ISugarQueryable<T> Having(Expression<Func<T, bool>> expression);
|
ISugarQueryable<T> Having(Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T> Having(string whereString, object whereObj = null);
|
ISugarQueryable<T> Having(string whereString, object whereObj = null);
|
||||||
@ -132,7 +132,7 @@ namespace SqlSugar
|
|||||||
#region Where
|
#region Where
|
||||||
new ISugarQueryable<T, T2> Where(Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2> Where(Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2> Where(Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2> Where(Expression<Func<T, T2, bool>> expression);
|
||||||
new ISugarQueryable<T, T2> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -194,7 +194,7 @@ namespace SqlSugar
|
|||||||
new ISugarQueryable<T, T2, T3> Where(Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3> Where(Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3> Where(Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3> Where(Expression<Func<T, T2, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3> Where(Expression<Func<T, T2, T3, bool>> expression);
|
ISugarQueryable<T, T2, T3> Where(Expression<Func<T, T2, T3, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -262,7 +262,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4> Where(Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4> Where(Expression<Func<T, T2, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4> Where(Expression<Func<T, T2, T3, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4> Where(Expression<Func<T, T2, T3, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4> Where(Expression<Func<T, T2, T3, T4, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4> Where(Expression<Func<T, T2, T3, T4, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -337,7 +337,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5> Where(Expression<Func<T, T2, T3, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5> Where(Expression<Func<T, T2, T3, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5> Where(Expression<Func<T, T2, T3, T4, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5> Where(Expression<Func<T, T2, T3, T4, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5> Where(Expression<Func<T, T2, T3, T4, T5, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5> Where(Expression<Func<T, T2, T3, T4, T5, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
@ -414,7 +414,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6> Where(Expression<Func<T, T2, T3, T4, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6> Where(Expression<Func<T, T2, T3, T4, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6> Where(Expression<Func<T, T2, T3, T4, T5, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6> Where(Expression<Func<T, T2, T3, T4, T5, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6> Where(Expression<Func<T, T2, T3, T4, T5, T6, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6> Where(Expression<Func<T, T2, T3, T4, T5, T6, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -489,7 +489,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(Expression<Func<T, T2, T3, T4, T5, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(Expression<Func<T, T2, T3, T4, T5, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(Expression<Func<T, T2, T3, T4, T5, T6, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(Expression<Func<T, T2, T3, T4, T5, T6, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -569,7 +569,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(Expression<Func<T, T2, T3, T4, T5, T6, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(Expression<Func<T, T2, T3, T4, T5, T6, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -656,7 +656,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -746,7 +746,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -841,7 +841,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
@ -941,7 +941,7 @@ namespace SqlSugar
|
|||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, bool>> expression);
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(List<ConditionalModel> conditionalModels);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Where(List<IConditionalModel> conditionalModels);
|
||||||
|
|
||||||
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
new ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> WhereIF(bool isWhere, Expression<Func<T, bool>> expression);
|
||||||
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> WhereIF(bool isWhere, Expression<Func<T, T2, bool>> expression);
|
||||||
|
@ -81,6 +81,7 @@
|
|||||||
<Compile Include="Entities\SlaveConnectionConfig.cs" />
|
<Compile Include="Entities\SlaveConnectionConfig.cs" />
|
||||||
<Compile Include="Enum\ConditionalType.cs" />
|
<Compile Include="Enum\ConditionalType.cs" />
|
||||||
<Compile Include="Enum\DbType.cs" />
|
<Compile Include="Enum\DbType.cs" />
|
||||||
|
<Compile Include="Enum\WhereType.cs" />
|
||||||
<Compile Include="ExpressionsToSql\CaseWhen\CaseWhen.cs" />
|
<Compile Include="ExpressionsToSql\CaseWhen\CaseWhen.cs" />
|
||||||
<Compile Include="ExpressionsToSql\CaseWhen\CaseWhenResolve.cs" />
|
<Compile Include="ExpressionsToSql\CaseWhen\CaseWhenResolve.cs" />
|
||||||
<Compile Include="ExpressionsToSql\DbMethods\SqlFuncExternal.cs" />
|
<Compile Include="ExpressionsToSql\DbMethods\SqlFuncExternal.cs" />
|
||||||
|
Loading…
Reference in New Issue
Block a user