WPF_模糊查询

 下面给大家写一个模糊查询的方法。为了方便在多数据的表格中找到需要的数据,同时还可以快速的锁定要查找的数据,我们就要通过模糊筛选的方法来实现这一个功能,可以使用字段查询,也可以使用时间范围来查询具体,具体实现模糊筛选的方法如下:

   首先查询出全部的数据然后在全部的数据中进行模糊筛选,将要查询的数据筛选出来。从中挑选自己想要的那一条数据。

   下面是实现查询的代码:

  /// <summary>

  /// 供应商付款管理

  /// </summary>

   private void SelectPurchase()

   {

            list = (from tbPurchase in myModel.Purchase

                                          join tbCommodity in myModel.Commodity on tbPurchase.CommodityID equals tbCommodity.CommodityID

                                          join tbSuppliers in myModel.Suppliers on tbPurchase.SuppliersID equals tbSuppliers.SuppliersID

                                          join tbSolicitor in myModel.Solicitor on tbPurchase.SolicitorID equals tbSolicitor.SolicitorID

                                          join tbTicketType in myModel.TicketType on tbPurchase.TicketTypeID equals tbTicketType.TicketTypeID

                                          join tbMonograph in myModel.Monograph on tbPurchase.MonographID equals tbMonograph.MonographID

                                          join tbPay in myModel.Pay on tbPurchase.PayID equals tbPay.PayID

                                          join tbUint in myModel.Unit on tbCommodity.UnitID equals tbUint.UnitID

                                          join tbCommodityType in myModel.CommodityType on tbCommodity.CommodityTypeID equals tbCommodityType.CommodityTypeID

                                          join tbFrim in myModel.Firm on tbCommodity.FirmID equals tbFrim.FirmID

                                          join tbType in myModel.Type on tbSuppliers.TypeID equals tbType.TypeID

                               select new PurchaseEntity

                               {

                                    PurchaseID = tbPurchase.PurchaseID,//采购ID

                                    CommodityID = tbPurchase.CommodityID,//商品ID

                                    SuppliersID = tbPurchase.SuppliersID,//供应商ID

                                    SolicitorID = tbPurchase.SolicitorID,//业务员ID

                                    TicketTypeID = tbPurchase.TicketTypeID,//开票类型

                                    MonographID = tbPurchase.MonographID,//制单人

                                    PayID = tbPurchase.PayID,

                                    Money = tbPurchase.Money,//采购金额

                                              TypeID = tbSuppliers.TypeID,//禁用类型ID

                                              FirmID = tbCommodity.FirmID,//厂商id

                                              SuppliersName = tbSuppliers.SuppliersName,//供应商名称

                                              Phone = tbPurchase.Phone,//电话

                                              Code = tbPurchase.Code,//单号

                                              Freight = tbPurchase.Freight,//运费

                                              Remark = tbPurchase.Remark,//备注

                                              PayName = tbPay.PayName,

                                              Time = tbPurchase.Time,//入库时间

                                              Person = tbPurchase.Person,//联系人

                                              SolicitorName = tbSolicitor.SolicitorName,//业务员名称

                                              TicketTypeName = tbTicketType.TicketTypeName,//开票类型

                                              MonographName = tbMonograph.MonographName,//制单人

                                              BarCode = tbCommodity.BarCode,//商品条码

                                              StoreCode = tbCommodity.StoreCode,//

                                              Count = tbCommodity.Count,//数量

                                              CommodityName = tbCommodity.CommodityName,//商品名称

                                              SuppliersCode = tbSuppliers.SuppliersCode,//供应商编码

                                              FirmName = tbFrim.FirmName,//厂商名称

                                              GuiGe = tbCommodity.GuiGe,//规格

                                              CommodityTypeCode = tbCommodityType.CommodityTypeCode,//商品类别编码

                                              Guarantee = tbCommodity.Guarantee,//保质期

                                              Habitat = tbCommodity.Habitat,//厂地

                                              TypeName = tbType.TypeName,

                                              UnitName = tbUint.UnitName,

                                          }).ToList();

            dgfukuanguanli.ItemsSource = list;

        }

字段查询的方法:

 /// <summary>

        /// 键盘弹起查询

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        private void TextBox_SelectionChanged(object sender, RoutedEventArgs e)

        {

            dgfukuanguanli.ItemsSource = null;

            dgfukuanguanli.ItemsSource = list.Where(x => x.CommodityName.Contains(text_name.Text.Trim()));

        }

时间范围查询方法如下:

        /// <summary>

        /// 查询

        /// </summary>

        /// <param name="sender"></param>

        /// <param name="e"></param>

        private void Select_Click(object sender, RoutedEventArgs e)

        {

            dgfukuanguanli.ItemsSource = null;

            if (StartDate.Text.Trim() != "")

            {

                DateTime? strA = Convert.ToDateTime(StartDate.Text);

                DateTime? strB = Convert.ToDateTime(EndDate.Text);

                dgfukuanguanli.ItemsSource = list.Where(x => x.Time >= strA && x.Time <= strB);

            }

            else

            {

                SelectPurchase();

            }         

        }

 

WPF_模糊查询