关闭

ASP.NET读取页面请求中的参数

1120人阅读 评论(0) 收藏 举报
分类:

当在浏览器地址栏中输入一个网址,例如输入网址http://www.huiyaosoft.com/news.aspx?id=1,此过程可描述为客户端向Web服务器发送了一个Web请求,其中id将作为参数传递给Web服务器,那么这个请求将由谁来处理?在Web服务器端如何获得id的值呢?

这个请求将由服务器上名为demo.aspx的asp.net页面处理。打开demo.aspx.cs文件,在Page_Load()方法中加入以下代码,其中行1的目的是先判断参数中是否存在id,如果存在再读取它的值。

  C# Code
1. if(Request.QueryString["id"]!=null)
2.     string id = Request.QueryString["id"]

通过demo.aspx?id=1这种方式传递参数的方式称之为Get方式,与之对应的是Post方式,即通过form表达提交,如下所示:

  Html
1. <form name="frmPagesEdit" id="frmPagesEdit" 
2.     action="../ajaxedemo.ashx" method="post">

此时,不能通过Request.QueryString[]获得值,而需通过Request.Form[]获得值。

如果不清楚页面传递了哪些参数,可通过foreach遍历方式读取所有参数,然后再分析。

下面的代码演示了读取所有QueryString中的参数:

  C# Code
1. foreach (string s in Request.Form)
2. {
3.     Response.Write(string.Format("form,name:{0},value:{1}", s, Request.Form[s]));
4. }

下面的代码演示了读取所有Form中的参数:

  C# Code
1. foreach (string s in Request.QueryString)
2. {
3.     Response.Write(string.Format("QueryString,name:{0},value:{1}", s, Request.QueryString[s]));
4. }

下面的代码演示了读取所有ServerVariables中的所有服务器参数,了解这些参数的含义很必要。

  C# Code
1. foreach (string s in Request.ServerVariables)
2. {
3.     Response.Write(string.Format("ServerVariables,name:{0},value:{1}</br>", s, Request.ServerVariables[s]));
4. }
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:57813次
    • 积分:2236
    • 等级:
    • 排名:第17673名
    • 原创:153篇
    • 转载:36篇
    • 译文:0篇
    • 评论:11条
    最新评论