asp.net 的各种传参
来源:互联网 发布:mean.js 教程 编辑:程序博客网 时间:2024/05/16 15:41
**********************************Default.aspx.xs***************************
using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
namespace Cookie_ViewState_Hiddlen
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ViewState["test"] = 0;//EnableViewState 默认为true 这里判断是否第一次 以便初始化
}
test_hidden.Value = "看看 这就是hidden";
if (Request.Cookies["test_cookie"]!= null)
{
TextBox3.Text = Request.Cookies["test_cookie"].Value.ToString();
}
}
protected void Button1_Click(object sender, EventArgs e)
{
if (ViewState["test"] != null)
{
int i = int.Parse(ViewState["test"].ToString());
i ++;//每点击一次按钮 相应的值加1 我们把EnableViewState 设为false 就没有效果了 为false 就不回发了
ViewState["test"] = i;
TextBox1.Text = ViewState["test"].ToString();
}
}
protected void Button2_Click(object sender, EventArgs e)
{
TextBox2.Text = test_hidden.Value;//通过把后台的hidden 控件当成一个中间变量就ok啦
}
protected void Button3_Click(object sender, EventArgs e) // cookie 是放在我们本地硬盘或内存上的
{
HttpCookie cookie = new HttpCookie("test_cookie");
cookie.Value = TextBox3.Text;
DateTime now=DateTime.Now;
TimeSpan add = new TimeSpan(0, 0, 1, 0);
cookie.Expires = now + add;
Response.Cookies.Add(cookie);
}
protected void Button4_Click(object sender, EventArgs e)
{
//我们先在 Global.asax 中初始化test_application的值 application 的好处是 只要你在iis上面挂起的 那么这个值就一值存在 可以供多个客户端访问
int i = int.Parse(Application["test_application"].ToString());
i++;
TextBox4.Text = "你是第" +i+"位访客";
Application["test_application"] = i;
}
protected void Button5_Click(object sender, EventArgs e) 一般一个用户的不同页面之间可以用session传参 多个用户的话 我们就用application
{
Session["test_session"] = TextBox5.Text;// 用的话 也是Session["test_session"] 直接取值就可了
Response.Redirect("WebForm1.aspx");
}
}
}
****************************Default.aspx***********************
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="Cookie_ViewState_Hiddlen._Default" EnableViewState="true"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>无标题页</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<h1>客户端的状态保存<h1>
<br/>
<asp:Button ID="Button1" runat="server" Text="ViewState"
onclick="Button1_Click" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<br/>
<asp:Button ID="Button2" runat="server" Text="Hiddlen"
onclick="Button2_Click" />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:HiddenField ID="test_hidden" runat="server" />
<br/>
<asp:Button ID="Button3" runat="server" Text="Cookie" onclick="Button3_Click" />
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<br/>
<p>还有一种就是使用get 提交表单 在用的时候用Request.QueryString[""]或者requestParam[] 获取
另一种是在form表单中定义好要用到的id 在其他页面就可以用request.form[""]使用的了</p>
<br/>
<h1> 基于服务器的状态保持</h1>
<asp:Button ID="Button4" runat="server" Text="Application"
onclick="Button4_Click" />
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<br/>
<asp:Button ID="Button5" runat="server" Text="Session"
onclick="Button5_Click" />
<asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
<br/>
</div>
</form>
</body>
</html>
大致的6种方式 通过Viewstate、隐藏字段、cookie 、get方式提交(前四种为基于客户端的) Application 、Session(这两种就是基于服务器的) ,基本的操作及区别见注释
- asp.net 的各种传参
- ASP.NET页面传值的各种方法和分析
- ASP.NET页面传数据的各种方法和分析
- ASP.NET页面传值的各种方法
- ASP.NET页面传值的各种方法和分析
- asp.net中DataTime的各种使用方法
- ASP.NET 中 DateTime 的各种操作
- ASP.NET 里面的各种路径
- ASP.NET GridView的各种用法(1)
- ASP.NET GridView 的各种用法(2)
- ASP.NET中各种文本的写法
- 细说ASP.NET的各种异步操作
- 细说ASP.NET的各种异步操作
- ASP.NET中各种乱码的解决
- 细说ASP.NET的各种异步操作
- asp.net各种状态的总结
- 细说ASP.NET的各种异步操作
- 细说ASP.NET的各种异步操作
- hadoop集群默认配置和常用配置
- linux学习之linux百问4,awk了解
- verilog学习记(加法器)
- poj2262 Goldbach's Conjecture
- oracle创建表空间
- asp.net 的各种传参
- Android程序的安全系统
- 在MFC中如何自定义消息及相应事件(VC6.0及VS2005)
- 服务器数据备份(shell 定时脚本备份mysql)
- Win8添加虚拟网卡的步骤
- path商店上的双层滑动效果
- 设计模式-工厂方法模式
- HBase入门5(集群) -压力分载与失效转发
- uva 1030 - Image Is Everything(思维,4级)