protected void Page_Load(object sender, EventArgs e) { string pageChecker = Request.QueryString["page"]; if (string.IsNullOrEmpty(pageChecker)) { Session.Remove("WithdrawalSearch"); } using (NpgsqlConnection conn = Classes.DB.InstBTCDB("instbtc")) { NpgsqlCommand command = new NpgsqlCommand(); string query = string.Empty; if (Request.HttpMethod == "POST") { string status = txtStatus.Value; string clientId = txtClientId.Value; string clientEmail = txtClientEmail.Value; string clientName = txtClientName.Value; string walletId = txtWalletId.Value; string documentId = txtWalletId.Value; string createdDate = txtCreatedDate.Value; string docStatus = txtDocStatus.Value; string refferenceHash = txtHash.Value; WithdrawalSearchModel searchModel = new WithdrawalSearchModel() { Status = status, ClientModel = new ClientModelSearch { Id = clientId, Email = clientEmail }, DocumentStatus = docStatus, ClientName = clientName, WalletId = walletId, DocumentId = documentId, CreatedDate = createdDate, refference_hash = refferenceHash }; Session["WithdrawalSearch"] = searchModel; } if (Session["WithdrawalSearch"] != null) { WithdrawalSearchModel sessionSearchModel = (WithdrawalSearchModel)Session["WithdrawalSearch"]; //Get SQLCommand Parameters and Query Parameters KeyValuePair <NpgsqlCommand, string> pair = getParameter(sessionSearchModel); command = pair.Key; query = pair.Value; } //Get Withdrawals Datas List <MWithdrawal> withdrawalRequest = new List <MWithdrawal>(); withdrawalRequest = WithdrawalUtilities.WithdrawalRequest(conn, command, query); #region Pagination Dictionary <string, int> pagerDictionary = new Dictionary <string, int>(); string paginationString = "page"; DocListPager.initialize(paginationString, 10); TotalRequest = WithdrawalUtilities.GetWithdrawalCount(conn, command, query); pagerDictionary = DocListPager.paginate(TotalRequest); withdrawalRequest = WithdrawalUtilities.WithdrawalRequest(conn, command, query, pagerDictionary["offset"], pagerDictionary["limit"]); rowCount.InnerText = $"{TotalRequest} Records Found"; resultBody.InnerHtml = BuildHtmlTable(withdrawalRequest).ToString(); #endregion //Get Document Statuses Selection OptionUtilities optionUtilities = new OptionUtilities(); txtDocStatus.Items.Clear(); txtDocStatus.Items.AddRange(optionUtilities.GetDocumentStatusOptions()); //Return Values to their Fields ReturnFieldValues(); } }