update dapper查询
This commit is contained in:
@@ -25,32 +25,19 @@ namespace Ewide.Core
|
|||||||
/// </summary>
|
/// </summary>
|
||||||
public string Type { get; set; }
|
public string Type { get; set; }
|
||||||
|
|
||||||
private string _QueryTypeStr;
|
|
||||||
|
|
||||||
public QueryTypeEnum QueryType
|
public QueryTypeEnum QueryType
|
||||||
{
|
{
|
||||||
get
|
get
|
||||||
{
|
{
|
||||||
switch (_QueryTypeStr)
|
return Type switch
|
||||||
{
|
{
|
||||||
case "=":
|
"=" or "equal" => QueryTypeEnum.Equal,
|
||||||
case "equal":
|
"<" or "lessthan" => QueryTypeEnum.LessThan,
|
||||||
return QueryTypeEnum.Equal;
|
"<=" or "lessthanorequal" => QueryTypeEnum.LessThanOrEqual,
|
||||||
case "<":
|
">" or "greaterthan" => QueryTypeEnum.GreaterThan,
|
||||||
case "lessthan":
|
">=" or "greaterthanorequal" => QueryTypeEnum.GreaterThanOrEqual,
|
||||||
return QueryTypeEnum.LessThan;
|
_ => QueryTypeEnum.Like,
|
||||||
case "<=":
|
};
|
||||||
case "lessthanorequal":
|
|
||||||
return QueryTypeEnum.LessThanOrEqual;
|
|
||||||
case ">":
|
|
||||||
case "greaterthan":
|
|
||||||
return QueryTypeEnum.GreaterThan;
|
|
||||||
case ">=":
|
|
||||||
case "greaterthanorequal":
|
|
||||||
return QueryTypeEnum.GreaterThanOrEqual;
|
|
||||||
default:
|
|
||||||
return QueryTypeEnum.Like;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -60,7 +47,6 @@ namespace Ewide.Core
|
|||||||
public SearchInfo()
|
public SearchInfo()
|
||||||
{
|
{
|
||||||
Value = new List<string>();
|
Value = new List<string>();
|
||||||
_QueryTypeStr = Type;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -45,7 +45,9 @@ namespace Ewide.Core.Extension.DataFilter.WebPage
|
|||||||
List<string> whereSqls = new List<string>();
|
List<string> whereSqls = new List<string>();
|
||||||
foreach (var elem in searchInfoList.Where(m => m != null))
|
foreach (var elem in searchInfoList.Where(m => m != null))
|
||||||
{
|
{
|
||||||
whereSqls.Add(GetWhereSqlBuild(elem));
|
var r = GetWhereSqlBuild(elem);
|
||||||
|
if (String.IsNullOrWhiteSpace(r)) continue;
|
||||||
|
whereSqls.Add(r);
|
||||||
}
|
}
|
||||||
StringBuilder result = new StringBuilder();
|
StringBuilder result = new StringBuilder();
|
||||||
|
|
||||||
@@ -64,10 +66,12 @@ namespace Ewide.Core.Extension.DataFilter.WebPage
|
|||||||
List<string> whereList = new List<string>();
|
List<string> whereList = new List<string>();
|
||||||
foreach (var elem in searchInfo.Value)
|
foreach (var elem in searchInfo.Value)
|
||||||
{
|
{
|
||||||
|
if (String.IsNullOrWhiteSpace(elem)) continue;
|
||||||
|
|
||||||
var parameterName = "@" + searchInfo.Field + Guid.NewGuid().ToString("N");
|
var parameterName = "@" + searchInfo.Field + Guid.NewGuid().ToString("N");
|
||||||
//AddParameter(parameterName, elem);
|
//AddParameter(parameterName, elem);
|
||||||
sqlParameters.Add(parameterName, QueryTypeEnum.Like == searchInfo.QueryType ? "%" + elem + "%" : elem);
|
sqlParameters.Add(parameterName, QueryTypeEnum.Like == searchInfo.QueryType ? "%" + elem + "%" : elem);
|
||||||
whereList.Add(String.Format(sqlT, searchInfo.Field, searchInfo.Type, parameterName));
|
whereList.Add(String.Format(sqlT, searchInfo.Field, GetSearchOperatorStr(searchInfo.QueryType), parameterName));
|
||||||
}
|
}
|
||||||
if (whereList.Count == 0) return String.Empty;
|
if (whereList.Count == 0) return String.Empty;
|
||||||
var resultT = "({0})";
|
var resultT = "({0})";
|
||||||
@@ -75,6 +79,26 @@ namespace Ewide.Core.Extension.DataFilter.WebPage
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private string GetSearchOperatorStr(QueryTypeEnum searchOperator)
|
||||||
|
{
|
||||||
|
switch (searchOperator)
|
||||||
|
{
|
||||||
|
case QueryTypeEnum.GreaterThan:
|
||||||
|
return ">";
|
||||||
|
case QueryTypeEnum.GreaterThanOrEqual:
|
||||||
|
return ">=";
|
||||||
|
case QueryTypeEnum.LessThan:
|
||||||
|
return "<";
|
||||||
|
case QueryTypeEnum.LessThanOrEqual:
|
||||||
|
return "<=";
|
||||||
|
case QueryTypeEnum.Like:
|
||||||
|
return " LIKE ";
|
||||||
|
default:
|
||||||
|
return "=";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
private void AddParameter(string key, object value)
|
private void AddParameter(string key, object value)
|
||||||
{
|
{
|
||||||
//var parameter = _SqlParameters.ParameterNames.FirstOrDefault(m => m == key);
|
//var parameter = _SqlParameters.ParameterNames.FirstOrDefault(m => m == key);
|
||||||
|
|||||||
Reference in New Issue
Block a user