C#中常用的页面跳转并传值的5中方法实例文档

C#中常用的页面跳转并传值的5中方法实例文档,包含:Request.QueryString、Seesion、Application、Cookie、Server.Transfer等5中页面传值方法,具体内容,我不介绍,需自己研究。 在C#中,进行页面跳转并传递值是Web开发中的常见操作,主要目的是在不同页面之间共享数据。以下将详细介绍标题和描述中提到的五种方法,并通过实例展示每种方法的用法。 1. **Request.QueryString** Request.QueryString用于获取URL查询字符串中的参数值。在HTML表单中,当用户点击提交按钮时,表单数据会被编码成查询字符串附加到URL后面。在服务器端,我们可以通过Request.QueryString来获取这些值。例如,以下代码展示了如何在ASP.NET中使用Query String进行页面跳转和传值: ```csharp // HTML 页面 <asp:Button ID="Button1" runat="server" onclick="Button1_Click" Text="登录" /> // 后台代码 protected void Button1_Click(object sender, EventArgs e) { string name = name.Text; string password = password.Text; Response.Redirect("second.aspx?name=" + Server.UrlEncode(name) + "&password=" + Server.UrlEncode(password)); } ``` 在第二个页面`second.aspx`中,可以使用`Request.QueryString`获取这些值: ```csharp string receivedName = Request.QueryString["name"]; string receivedPassword = Request.QueryString["password"]; ``` 2. **Session** Session是ASP.NET中一种全局存储方式,它可以跨多个页面存储用户会话期间的数据。创建Session后,可以在任何页面访问这些数据。以下是如何使用Session的例子: ```csharp // 设置Session Session["name"] = name.Text; Session["password"] = password.Text; Response.Redirect("second.aspx"); // 获取Session string receivedName = (string)Session["name"]; string receivedPassword = (string)Session["password"]; ``` 注意,Session需要开启,且应避免存储敏感信息,因为它们可能被缓存或记录。 3. **Application** Application对象用于在所有用户之间共享数据,它存储在服务器内存中,直到应用程序关闭。使用Application时需要注意,所有用户都能访问这些数据。 ```csharp // 设置Application Application["name"] = name.Text; Application["password"] = password.Text; Response.Redirect("second.aspx"); // 获取Application string receivedName = (string)Application["name"]; string receivedPassword = (string)Application["password"]; ``` 4. **Cookie** Cookie是一种在客户端存储数据的方式,可以跨页面持久化数据。不过,它们有大小和数量限制,且不适用于敏感信息。 ```csharp // 设置Cookie HttpCookie cookie = new HttpCookie("userInfo"); cookie["name"] = name.Text; cookie["password"] = password.Text; Response.Cookies.Add(cookie); // 获取Cookie if(Request.Cookies["userInfo"] != null) { string receivedName = Request.Cookies["userInfo"]["name"]; string receivedPassword = Request.Cookies["userInfo"]["password"]; } ``` 5. **Server.Transfer** Server.Transfer方法不实际发起HTTP请求,而是直接在服务器内部转移控制权到另一个页面,保持当前请求的状态。这种方式速度快,但用户无法看到新URL。 ```csharp // 设置传递的值 HttpContext.Current.Items["name"] = name.Text; HttpContext.Current.Items["password"] = password.Text; Server.Transfer("second.aspx"); // 在second.aspx中获取 string receivedName = (string)HttpContext.Current.Items["name"]; string receivedPassword = (string)HttpContext.Current.Items["password"]; ``` 使用Items集合可以在页面间临时存储数据,但只限于单次请求。 以上五种方法各有优缺点,开发者需要根据实际需求选择合适的方式进行页面跳转和传值。例如,对于短暂的、用户相关的数据,Session可能是最佳选择;而对于需要跨多个用户共享的信息,可以考虑Application。Cookie适用于客户端存储,而Server.Transfer则适用于提高性能,减少HTTP请求。






























剩余21页未读,继续阅读

- yan1020_c2012-08-01很全面,代码也很详细..顶
- CherryQoQ2012-06-26这个和全面啊,帮助挺大的~~~
- 木木奋斗2013-10-09很详细,还没使用过,不过提供的几种方法还是值得的

- 粉丝: 58
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 2010年上半年信息系统项目管理师上午试卷-标准答案.doc
- 2022单片机毕业答辩陈述参考.docx
- JavaScript中的各种操作符使用总结.doc
- CAD绘制中找坐标点怎么对图形缩小为0.1?.pdf
- vb调用excel进行数据处理.docx
- 第四章电子商务管理的组织与 ppt.pptx
- SQL语言学习ppt课件.ppt
- 《PhotoshopCS6经典案例教程》-课件.ppt
- 2021-2022收藏资料以信息化促进华光品牌打造,加速二胶发展.doc
- Html网游的收费方式和推广渠道.pptx
- 中职计算机应用基础教学大纲.doc
- 第7章Excel在财务报表中的应用ppt课件.ppt
- access考试总结.docx
- hadoop开发实战培训.pptx
- C语言程序设计形考任务.docx
- (完整版)专转本计算机基本知识点总结大全.pdf


