public List <Bill> SearchingBill(BillSearchCriteria billSearchCriteria)
        {
            List <Bill> bills = OnGetItems <Bill>();

            if (billSearchCriteria != null)
            {
                if (billSearchCriteria.CreatedBy.HasValue)
                {
                    bills = bills.Where(pr => pr.UserId == billSearchCriteria.CreatedBy.Value).ToList();
                }
                if (billSearchCriteria.CustId.HasValue)
                {
                    bills = bills.Where(pr => pr.CustId == billSearchCriteria.CustId.Value).ToList();
                }
                if (billSearchCriteria.Code != "")
                {
                    bills = bills.Where(pr => pr.BillCode.ToLower().Contains(billSearchCriteria.Code)).ToList();
                }
                if (billSearchCriteria.To.HasValue && billSearchCriteria.From.HasValue)
                {
                    bills = bills.
                            Where(pr => pr.CreatedDate.CompareTo(billSearchCriteria.From.Value) >= 0 &&
                                  pr.CreatedDate.CompareTo(billSearchCriteria.To.Value) <= 0)
                            .ToList();
                }
            }

            return(bills);
        }
        private void btnSearch_Click(object sender, EventArgs e)
        {
            BillSearchCriteria billSearchCriteria = new BillSearchCriteria
            {
                Code      = txtCode.Text.ToLower(),
                CreatedBy = (cbmUsers.SelectedValue != null && cbmUsers.SelectedIndex != 0) ? (int?)cbmUsers.SelectedValue : (int?)null,
                CustId    = (cbmCustomers.SelectedValue != null && cbmCustomers.SelectedIndex != 0) ? (int?)cbmCustomers.SelectedValue : (int?)null,
                From      = dtpFrom.Value != null ? dtpFrom.Value : (DateTime?)null,
                To        = dtpTo.Value != null?dtpTo.Value.AddDays(1).Date : (DateTime?)null,
            };
            BillService billService = new BillService();
            List <Bill> bills       = billService.SearchingBill(billSearchCriteria);

            if (bills == null)
            {
                bills = new List <Bill>();
            }
            setUpDataGrid(bills);
        }