YES-Win Winform开发框架 自定义查询方法并在表格中展示


YES-Win Winform开发框架 自定义查询方法并在表格中展示

方案一:BLL直接扩展方法

bll中新建一个search方法,把自己的条件参数都带上

源码如下:

C# 全选
public class bllLog : bllBaseUserCommon
{
    public bllLog()
        : base(typeof(sys_DataLog))
    {

    }
    /// <summary>
    /// 查询
    /// </summary>
    /// <param name="UserID"></param>
    /// <param name="UserName"></param>
    /// <param name="DataType"></param>
    /// <param name="TableName"></param>
    /// <param name="timeBegin"></param>
    /// <param name="timeEnd"></param>
    /// <returns></returns>
    public DataTable Search(string UserID, string UserName, string DataType, string TableName, DateTime? timeBegin, DateTime? timeEnd)
    {
        // 查询sql语句
        StringBuilder sqlBuilder = new StringBuilder();
        // 查询参数
        var cmds = new GZDBHelper.SqlParameterProvider();

        sqlBuilder.AppendFormat("SELECT * FROM {0} WHERE 1=1", sys_DataLog._TableName);
        if (!String.IsNullOrEmpty(UserID))
        {
            sqlBuilder.AppendFormat(" AND UserID = @UserID");
            cmds.AddParameter("@UserID", SqlDbType.VarChar, UserID);
        }
        if (!String.IsNullOrEmpty(UserName))
        {
            sqlBuilder.AppendFormat(" AND UserName = @UserName");
            cmds.AddParameter("@UserName", SqlDbType.VarChar, UserName);
        }
        if (!String.IsNullOrEmpty(DataType))
        {
            sqlBuilder.AppendFormat(" AND DataType = @DataType");
            cmds.AddParameter("@DataType", SqlDbType.VarChar, DataType);
        }
        if (!String.IsNullOrEmpty(TableName))
        {
            sqlBuilder.AppendFormat(" AND DataType = @TableName");
            cmds.AddParameter("@TableName", SqlDbType.VarChar, TableName);
        }
        if (timeBegin != null)
        {
            sqlBuilder.AppendFormat(" AND LogTime>=@LogTime1");
            cmds.AddParameter("@LogTime1", SqlDbType.Date, timeBegin.Value.Date);
        }
        if (timeEnd != null)
        {
            sqlBuilder.AppendFormat(" AND LogTime<@LogTime2");
            // 结束时间,存在 23:59秒
            cmds.AddParameter("@LogTime2", SqlDbType.Date, timeEnd.Value.Date.AddDays(1));
        }

        sqlBuilder.AppendLine(" ORDER BY LogTime DESC");

        DataTable data = dal.DBHelper.GetTable(sqlBuilder.ToString(), sys_DataLog._TableName, cmds);
        return data;
    }

}

设计查询界面

YES-Win Winform开发框架 自定义查询方法并在表格中展示

查询按钮点击方法

C# 全选
private void btn_Refresh_Click(object sender, EventArgs e)
{

    DataTable dt1 = bll.Search(txtUserID.Text, txt_UserName.Text, txtDataType.Text, txtTableName.Text, txtTime1.DateTime, txtTime2.DateTime);
    gc_Business.DataSource = dt1;
}

效果如下

YES-Win Winform开发框架 自定义查询方法并在表格中展示

 

版权声明:本文为YES开发框架网发布内容,转载请附上原文出处连接
管理员
评论列表

发表评论

评论内容
昵称:
关联文章

YES-Win Winform开发框架 定义查询方法表格展示
YESWEB框架表格定义右键菜单
YES-WIN winform开发框架报表打印功能开发
YES-WIN Winform开发框架 日志管理升级指南
YESWin Winform开发框架 代码生成器使用
Winform开发框架日志管理
C# Winform 定义异常处理方法
Vue.js如何限制Props只接受特定数组值:定义验证方法解析
定义表格操作按钮 GridControlEmbeddedNavigator
ABP VNext框架Winform终端的开发和客户端授权信息的处理
如何 Vue 2 使用 Webpack 构建时为 favicon.ico 设置定义根路径前缀
窗体GridView布局定义
YESWin Winform开发框架 项目初始化配置运行
YESWin winform开发框架 新建一个业务模块项目
YES-WEB开发框架 VS配置代码生成器快捷按钮
YESWin winform开发框架 模块功能注册配置
JOC快速开发框架 表格值改变更新合计
YES-WEB快速开发框架,.NET WEB开发平台,高效的web项目开发框架
AS.NET Core定义全局访问HttpContext
网站迁移纪实:从Web Form 到 Asp.Net Core (Abp vNext 定义开发