WPF叠加查询数据

这种查询需要再重新创建服务和数据库的存储过程只需要在原来的查询进行筛选查询,这里的多条件查询就是在客户端拼接条件查询数据,要注意的是第一个拼接条件列里面没有 and连接起来,后面的拼接条件必须要有 and 拼接条件,否则就会报错。代码:

// 点击按钮事件 触发 多条件查询岗位信息

        private void Btn_Select_XianXiGangWei(object sender, RoutedEventArgs e)

        {

            try

            {

                //初始化变量(接收条件)

                string strSelect = "";

                string strName = txt_Name.Text.Trim();//获取岗位名称

                string QiYon = MyComboBoxItem.Text;//获取状态值

                //  string QiYon = MyComboBoxItem.Text;

                //所有数据都为空或特殊数据是直接查询         

                    strSelect = "PostName like '%'+'" + strName + "'+'%'";

               //因为""就相等于查询全部

                if (QiYon != "全部")

                {

                    strSelect = strSelect + "and State like '%'+'" + QiYon + "%'";

                }

 

                //获取全部数据 调用 User_SelectGangWei:服务器的服务

                DataTable dtselect = myClient.User_SelectGangWei().Tables[0];

                //把表格转化为数据视图

                DataView dv = new DataView(dtselect);

                //接收最终页面显示的数据

                DataTable dt = new DataTable();

                //判断是否有数据,并且筛选条件不能为空 进行筛选数据

                if (dtselect.Rows.Count > 0 && strSelect != "")

                {

                    //筛选数据

                    dv.RowFilter = strSelect;

                    dt = dv.ToTable();

                }

                //接受条件为空时查询全部数据

                if (strSelect == "")

                {

                    //查询全部数据

                    dt = dv.ToTable();

                }

                //绑定表格数据

                dgSelectEnterprise.ItemsSource = dt.DefaultView;

            }

            catch (Exception)

            {

                throw;

            }

        }
效果:

其实这一种查询只能用字符串String进行拼接查询

 

还是写一下数据库的存储过程吧下面的Sql语句都没有Where筛选条件

 

--查询岗位信息 RTRIM  左去空格

 

IF(@type='Select_User_Station')

BEGIN

Select PostID,RTRIM(PostName) AS PostName,RTRIM(postState)

AS postState,EstablishTrim,RevampTrim,

RTRIM(case when State='true'  then '启用' else '停用' end)

AS State From BS_Station

END

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值