namespace CSFrameworkV5.Interfaces
|
{
|
/// <summary>
|
/// 支持高级搜索功能
|
/// </summary>
|
public interface ISupportAdvancedSearch
|
{
|
/// <summary>
|
/// 高级查询条件类型
|
/// </summary>
|
AdvancedSearchResult ResultType { get; set; }
|
|
/// <summary>
|
/// 高级搜索的方法
|
/// </summary>
|
/// <param name="whereSQL">高级搜索组合的查询条件</param>
|
/// <returns>返回查询的对象</returns>
|
object AdvancedSearch(string whereSQL);
|
|
/// <summary>
|
/// 高级搜索的方法
|
/// </summary>
|
/// <param name="whereSQL">高级搜索组合的查询条件,如:where Code=@Code</param>
|
/// <param name="parameters">查询参数</param>
|
/// <returns></returns>
|
object AdvancedSearch(string whereSQL, DbParameterModel[] parameters);
|
}
|
|
public class DbParameterModel
|
{
|
/// <summary>
|
/// 自定义符号标识,用于替换为SQL参数符号, 如@,?, :
|
/// </summary>
|
public const string ParamSymbol = "#P#";
|
|
/// <summary>
|
/// 参数名称,字段名称, 如:#P#Name
|
/// </summary>
|
public string ParamName { get; set; }
|
|
/// <summary>
|
/// 参数值,用户输入的值,如:小李
|
/// </summary>
|
public object ParamValue { get; set; }
|
}
|
|
/// <summary>
|
/// 高级查询条件类型, 支持两种模式:SQL拼接, SQL参数
|
/// </summary>
|
public enum AdvancedSearchResult
|
{
|
/// <summary>
|
/// Where SQL语句
|
/// </summary>
|
WhereSQL,
|
|
/// <summary>
|
/// DB参数
|
/// </summary>
|
DbParamList
|
}
|
}
|