📄 queryparameter.cs
字号:
using System;
using System.Data;
using System.Data.SqlClient;
namespace {namespace}.DataAS
{
/// <summary>
/// 检索参数
/// </summary>
public class QueryParameter
{
protected string _ColumnName;
protected object _ColumnValue;
protected QueryMethodOperator _Operator;
protected QueryDataType _DataType;
protected object _BetweenValue1;
protected object _BetweenValue2;
protected bool _IsBetween;
protected string _leftExtends;
protected string _rightExtends;
public string Logic;
private bool IsNoInit;
/// <summary>
/// 左扩展
/// </summary>
public string LeftExtends
{
get
{
return _leftExtends;
}
set
{
_leftExtends = value;
}
}
/// <summary>
/// 右扩展
/// </summary>
public string RightExtends
{
get
{
return _rightExtends;
}
set
{
_rightExtends = value;
}
}
public QueryParameter()
{
IsNoInit = true;
}
/// <summary>
/// 构造 一般检索参数
/// </summary>
/// <param name="_ColumnName">字段名</param>
/// <param name="_ColumnValue">字段值</param>
/// <param name="_Operator">运算操作符</param>
public QueryParameter(string ColumnName, object ColumnValue, QueryMethodOperator Operator, QueryDataType DataType)
{
_leftExtends = "";
_rightExtends = "";
this._ColumnName = ColumnName;
this._ColumnValue = ColumnValue;
this._Operator = Operator;
this._DataType = DataType;
IsNoInit = false;
Logic = "AND";
}
public QueryParameter(string ColumnName, object ColumnValue, QueryMethodOperator Operator, QueryDataType DataType,
string LeftExtend,string RightExtend)
{
_leftExtends = LeftExtend;
_rightExtends = RightExtend;
this._ColumnName = ColumnName;
this._ColumnValue = ColumnValue;
this._Operator = Operator;
this._DataType = DataType;
IsNoInit = false;
Logic = "AND";
}
/// <summary>
/// 构造 Between 运算检索参数
/// </summary>
/// <param name="_ColumnName"></param>
/// <param name="_BetweenValue1"></param>
/// <param name="_BetweenValue1"></param>
/// <param name="_DataType"></param>
public QueryParameter(string ColumnName, object BetweenValue1, object BetweenValue2, QueryDataType DataType)
{
_IsBetween = true;
this._ColumnName = ColumnName;
this._DataType = DataType;
this._BetweenValue1 = BetweenValue1;
this._BetweenValue2 = BetweenValue2;
IsNoInit = false;
Logic = "AND";
}
/// <summary>
/// 获得字符串结果
/// </summary>
/// <returns></returns>
public override string ToString()
{
string ValueString = "";
string valueBetween1 = "";
string valueBetween2 = "";
string vergeSymbol_left = "";
string vergeSymbol_right = "";
if (IsNoInit == true)
{
return "";
}
else
{
if (_DataType == QueryDataType.String)
{
vergeSymbol_left = "'";
vergeSymbol_right = "'";
}
else if (_DataType == QueryDataType.Number)
{
vergeSymbol_left = "";
vergeSymbol_right = "";
}
else if (_DataType == QueryDataType.AccessDbDate)
{
vergeSymbol_left = "#";
vergeSymbol_right = "#";
}
else if (_DataType == QueryDataType.IN)
{
vergeSymbol_left = "(";
vergeSymbol_right = ")";
}
if (_IsBetween)
{
valueBetween1 += vergeSymbol_left + _BetweenValue1.ToString() + vergeSymbol_right;
valueBetween2 += vergeSymbol_left + _BetweenValue2.ToString() + vergeSymbol_right;
return _leftExtends + _ColumnName + " BETWEEN (" + valueBetween1 + " AND " + valueBetween2 + ")" + _rightExtends;
}
else
{
ValueString += vergeSymbol_left + _ColumnValue.ToString() + vergeSymbol_right;
return _leftExtends + _ColumnName + " " + getOperatorString(_Operator) + " " + ValueString + _rightExtends;
}
}
}
/// <summary>
/// 获得操作运算符
/// </summary>
/// <param name="qmo"></param>
/// <returns></returns>
private string getOperatorString(QueryMethodOperator qmo)
{
switch (qmo)
{
case QueryMethodOperator.Equation:
return "=";
break;
case QueryMethodOperator.In:
return "IN";
break;
case QueryMethodOperator.Like:
return "Like";
break;
case QueryMethodOperator.NotEquation:
return "<>";
break;
case QueryMethodOperator.BigTo:
return ">";
break;
case QueryMethodOperator.SmallTo:
return "<";
break;
}
return null;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -