ASP.Net/Request/Query String
Содержание
Deal with the query string (VB.net)
<source lang="csharp">
<%@ Page Language=VB Debug=true %> <script runat=server> Sub Page_Load(ByVal Sender as Object, ByVal E as EventArgs)
If Len(Request.QueryString("StoreID")) = 0 _ or Len(Request.QueryString("ProductID")) = 0 Then lblMessage1.Text = "One or both of the fields " _ & "StoreID or ProductID were not found in the " _ & "QueryString collection!" Else lblMessage1.Text = "Store ID: " _ & Request.QueryString("StoreID") lblMessage2.Text = "Product ID: " _ & Request.QueryString("ProductID") End If
End Sub </SCRIPT> <HTML> <HEAD> <TITLE>QueryString Sample Page</TITLE> </HEAD> <BODY > <form runat="server"> <asp:Label
id="lblMessage1" runat="Server" Font-Bold="True"
/>
<asp:Label
id="lblMessage2" runat="Server" Font-Bold="True"
/> </Form> </BODY> </HTML>
</source>
Get query string from Request (C#)
<source lang="csharp">
<%@ Page language="c#" src="QueryStringRecipient.aspx.cs" AutoEventWireup="false" Inherits="QueryStringRecipient" %> <HTML>
<body> <form id="Form1" method="post" runat="server"> <asp:Label id="lblInfo" style="Z-INDEX: 101; LEFT: 26px; POSITION: absolute; TOP: 25px" runat="server" Width="412px" Height="130px" BorderStyle="Groove" BorderWidth="2px" Font-Bold="True" Font-Names="Verdana" Font-Size="Medium" BackColor="LightYellow"></asp:Label> </form> </body>
</HTML>
<%-- using System; using System.Collections; using System.ruponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;
public class QueryStringRecipient : System.Web.UI.Page { protected System.Web.UI.WebControls.Label lblInfo; private void Page_Load(object sender, System.EventArgs e) { lblInfo.Text = "Item: " + Request.QueryString["Item"]; lblInfo.Text += "
Show Full Record: "; lblInfo.Text += Request.QueryString["Mode"]; } #region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); } /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load); } #endregion }
--%>
</source>
Send and get query string (C#)
<source lang="csharp">
<%@ Page language="c#" src="QueryStringSender.aspx.cs" AutoEventWireup="false" Inherits="QueryStringSender" %> <HTML>
<body> <form id="Form1" method="post" runat="server"> <asp:ListBox id="lstItems" style="Z-INDEX: 101; LEFT: 21px; POSITION: absolute; TOP: 26px" runat="server" Width="204px" Height="188px"></asp:ListBox> <asp:CheckBox id="chkDetails" style="Z-INDEX: 102; LEFT: 24px; POSITION: absolute; TOP: 224px" runat="server" Width="216px" Height="16px" Text="Show Full Details"></asp:CheckBox> <asp:Button id="cmdGo" style="Z-INDEX: 103; LEFT: 24px; POSITION: absolute; TOP: 272px" runat="server" Width="152px" Text="View Information"></asp:Button> <asp:Label id="lblError" style="Z-INDEX: 104; LEFT: 304px; POSITION: absolute; TOP: 64px" runat="server" Width="312px" Height="96px"></asp:Label> </form> </body>
</HTML>
<%-- using System; using System.Collections; using System.ruponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;
public class QueryStringSender : System.Web.UI.Page { protected System.Web.UI.WebControls.ListBox lstItems; protected System.Web.UI.WebControls.CheckBox chkDetails; protected System.Web.UI.WebControls.Button cmdGo; protected System.Web.UI.WebControls.Label lblError; private void Page_Load(object sender, System.EventArgs e) { // Add sample values. lstItems.Items.Add("A"); lstItems.Items.Add("B"); } #region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); } /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.cmdGo.Click += new System.EventHandler(this.cmdGo_Click); this.Load += new System.EventHandler(this.Page_Load); } #endregion private void cmdGo_Click(object sender, System.EventArgs e) { if (lstItems.SelectedIndex == -1) { lblError.Text = "You must select an item."; } else { string url = "QueryStringRecipient.aspx?"; url += "Item=" + lstItems.SelectedItem.Text + "&"; url += "Mode=" + chkDetails.Checked.ToString(); Response.Redirect(url); } } }
--%>
<%-- QueryStringRecipient.aspx
<%@ Page language="c#" src="QueryStringRecipient.aspx.cs" AutoEventWireup="false" Inherits="QueryStringRecipient" %>
<HTML>
<body> <form id="Form1" method="post" runat="server"> <asp:Label id="lblInfo" style="Z-INDEX: 101; LEFT: 26px; POSITION: absolute; TOP: 25px" runat="server" Width="412px" Height="130px" BorderStyle="Groove" BorderWidth="2px" Font-Bold="True" Font-Names="Verdana" Font-Size="Medium" BackColor="LightYellow"></asp:Label> </form> </body>
</HTML>
//File: QueryStringRecipient.aspx.cs using System; using System.Collections; using System.ruponentModel; using System.Data; using System.Drawing; using System.Web; using System.Web.SessionState; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls;
public class QueryStringRecipient : System.Web.UI.Page { protected System.Web.UI.WebControls.Label lblInfo; private void Page_Load(object sender, System.EventArgs e) { lblInfo.Text = "Item: " + Request.QueryString["Item"]; lblInfo.Text += "
Show Full Record: "; lblInfo.Text += Request.QueryString["Mode"]; } #region Web Form Designer generated code override protected void OnInit(EventArgs e) { // // CODEGEN: This call is required by the ASP.NET Web Form Designer. // InitializeComponent(); base.OnInit(e); } /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InitializeComponent() { this.Load += new System.EventHandler(this.Page_Load); } #endregion }
--%>
</source>
Showing QueryString values via the QueryString Collection in ASP.NET
<source lang="csharp">
<%@ Page Language="vb" %> <html>
<head> <title>Showing QueryString values via the QueryString Collection in ASP.NET</title> </head>
<body>
<% Dim Counter1, Counter2 As Integer Dim Keys(), subKeys() As String Dim MyQueryStringCollection As NameValueCollection MyQueryStringCollection=Request.QueryString Keys = MyQueryStringCollection.AllKeys For Counter1 = 0 To Keys.GetUpperBound(0)
Response.Write("Key: " & Keys(Counter1) & "
") subKeys = MyQueryStringCollection.GetValues(Counter1) " Get all values under this key. For Counter2 = 0 To subKeys.GetUpperBound(0) Response.Write("Value " & CStr(Counter2) & ": " & subKeys(Counter2) & "
") Next Counter2
Next Counter1 %>
</body> </html>
</source>