Solved

ASP.Net/c#: Using Query string in Gridview paging

Posted on 2008-06-12
12
8,166 Views
Last Modified: 2013-12-17
I want to use Query string  in Grid view paging. So when moving from one page to another, I want  to pass the input parameters from  Query string to the datasoure instead of passing it directly from the text box.
<tr>
		<td class="copycontact">First Name:</td>
		<td>
		 <asp:TextBox ID="txtFirstName" runat="server" TabIndex="1" MaxLength="20" /><asp:Label ID="Req1" runat="server" CssClass="Required" Text="*" />
		 <asp:RequiredFieldValidator      CssClass="rfv" ID="vldFirstNameReq" runat="server" ControlToValidate="txtFirstName" ErrorMessage="First Name is required." Display="None" />
		 <asp:RegularExpressionValidator  CssClass="rfv" ID="vldFirstNameReqEx" runat="server" ControlToValidate="txtFirstName" ErrorMessage="Invalid First Name Format." ValidationExpression="^[a-zA-Z.\s]{2,20}$" Display="None" />
		</td>
	   </tr>
	   <tr>
		<td class="copycontact">Last Name:</td>
		<td>
		 <asp:TextBox ID="txtLastName" runat="server" TabIndex="2" MaxLength="30" /><asp:Label ID="Req2" runat="server" CssClass="Required" Text="*"/>
		 <asp:RequiredFieldValidator CssClass="rfv" ID="vldLastNameReq" runat="server" ControlToValidate="txtLastName" ErrorMessage="Last Name is required." Display="None" />
		 <asp:RegularExpressionValidator  CssClass="rfv" ID="vldLastNameReqEx" runat="server" ControlToValidate="txtLastName" ErrorMessage="Invalid Last Name Format." ValidationExpression="^[a-zA-Z-'.\s]{2,30}$" Display="None" />
		</td>
	   </tr>
 
<table width="563" border="0" cellpadding="0" cellspacing="0">
	   <tr>
		<td colspan="2">
		 <asp:GridView ID="grdFindMembers"
			 runat="server"
			 AutoGenerateColumns="False"
			 AllowPaging="True"
			 AllowSorting="True"
			 EnableViewState="False"
			 PageSize="15"
			 Width="500px"
			 OnSorting="gridView_Sorting"
			 OnPageIndexChanging="grdFindMembers_PageIndexChanging"
			 EmptyDataText="There are no members matching this search criteria.">
		  <Columns>
		   <asp:HyperLinkField HeaderText="First Name" SortExpression="FirstName" DataTextField="FirstName" DataNavigateUrlFields="IPCode"
			   NavigateUrl="~/member/AccountSummary.aspx" DataNavigateUrlFormatString="~/member/AccountSummary.aspx?MemberID={0}" />
		   <asp:HyperLinkField HeaderText="Last Name" SortExpression="LastName" DataTextField="LastName" DataNavigateUrlFields="IPCode"
			   NavigateUrl="~/member/AccountSummary.aspx" DataNavigateUrlFormatString="~/member/AccountSummary.aspx?MemberID={0}" />
		   <asp:HyperLinkField HeaderText="ZipCode" SortExpression="ZipCode" DataTextField="ZipCode" DataNavigateUrlFields="IPCode"
			   NavigateUrl="~/member/AccountSummary.aspx" DataNavigateUrlFormatString="~/member/AccountSummary.aspx?MemberID={0}" />
		   <asp:HyperLinkField HeaderText="E-Mail" SortExpression="Email" DataTextField="Email" DataNavigateUrlFields="IPCode"
			   NavigateUrl="~/member/AccountSummary.aspx" DataNavigateUrlFormatString="~/member/AccountSummary.aspx?MemberID={0}" />
		  </Columns>
		  <PagerSettings Position="Top" />
		 </asp:GridView>
		 &nbsp;
		 <asp:Label ID="lblHiddenText" runat="server" EnableViewState="False"></asp:Label>
		</td>
	   </tr>
	  </table>

Open in new window

0
Comment
Question by:meinhoona
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 6
  • 5
12 Comments
 

Author Comment

by:meinhoona
ID: 21773225
I hav edoubled the points.........
0
 
LVL 6

Expert Comment

by:cottsak
ID: 21775080
i would suggest not to try and do this. too many controls manage paging without you having to develop the functionality. try another grid, like Telerik's RadGrid - http://www.telerik.com/products/aspnet-ajax/controls/grid/overview.aspx
0
 
LVL 5

Expert Comment

by:rendaduiyan
ID: 21777130
if your datagrid(I think you should have) is binding to a datasource, you can add a parameter in your SQL, e.g:
SelectCommand="SELECT * FROM [table] WHERE (platform7alarm.agentIP = @agent_ip) ">
            <SelectParameters>
                <asp:QueryStringParameter Name="agent_ip" QueryStringField="agent_ip" />
            </SelectParameters>

In the example, a parameter agent_ip is defined, and the value is from QueryString.
Good luck.
0
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 

Author Comment

by:meinhoona
ID: 21780703
rendaduiyan:
I am passing input parameters to my stored procedure in my c# code. How would I use input parameters then?
0
 

Author Comment

by:meinhoona
ID: 21782727
rendaduiyan:
I am passing input parameters to my stored procedure in my c# code. How would I use QueryString as input parameters then? Give me some sample
0
 
LVL 5

Expert Comment

by:rendaduiyan
ID: 21800100
I assumed you know how to declare a stored procedure in ADO.NET.
So here is it:
when you define a sqlcommand object, you can add parameters as needed:
command.CommandType = CommandType.StoredProcedure;

command.Parameters.Add("agent_ip",  this.Request["agent_ip"]);

...


0
 

Author Comment

by:meinhoona
ID: 21826138
Its returning null value
string strFName = this.Request["strFN"];

Open in new window

0
 
LVL 5

Expert Comment

by:rendaduiyan
ID: 21843207
what's request URL? are your parameters in HTTP request correct?
pls show me your URL.
0
 
LVL 5

Expert Comment

by:rendaduiyan
ID: 21843213
sorry for the wrong guide. try this:
Request.Params["strFN"]
0
 

Author Comment

by:meinhoona
ID: 21851016
May be I am not clear enough., I am not using http request to pass variables to another page.

I just want to retain the value of my variable after the postback.
0
 
LVL 5

Expert Comment

by:rendaduiyan
ID: 21853247
let's make it clear.
in your first page, some button callback:

Response.Redirect(http://localhost/default1.aspx?strFN='str1")

and your IE you redirect to
http://localhost/default1.aspx?strFN='str1"

so in your default1.aspx cs codes,  e.g:
Page_Load(...)
{
     //you can print the request parameter out:
     this.Label1.text = Request.Params["strFN"];
}
0
 

Accepted Solution

by:
meinhoona earned 0 total points
ID: 21856588
No, I have  few text boxes acting as search criteria and populate the GridView. I want to retain these search criteria in temp variables so that when  I do pagination on the same  criteria, it would retrieve search criteria from the temp variables instead of the text boxes in order to maintain integrity of the data.
0

Featured Post

Online Training Solution

Drastically shorten your training time with WalkMe's advanced online training solution that Guides your trainees to action. Forget about retraining and skyrocket knowledge retention rates.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Just a quick little trick I learned recently.  Now that I'm using jQuery with abandon in my asp.net applications, I have grown tired of the following syntax:      (CODE) I suppose it just offends my sense of decency to put inline VBScript on a…
Introduction This article shows how to use the open source plupload control to upload multiple images. The images are resized on the client side before uploading and the upload is done in chunks. Background I had to provide a way for user…
In this video, viewers will be given step by step instructions on adjusting mouse, pointer and cursor visibility in Microsoft Windows 10. The video seeks to educate those who are struggling with the new Windows 10 Graphical User Interface. Change Cu…
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…

623 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question