ASP.NET页面传值_第三篇_ViewState
+++ 页面代码如下:
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="Button" /><br />
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
+++ 后台代码如下:
protected void Button1_Click(object sender, EventArgs e)
{
ViewState["name"] = TextBox1.Text.Trim().ToString();
ViewState["email"] = TextBox2.Text.Trim().ToString();
Response.Write("姓名:" + ViewState["name"].ToString() + "</br>" +
"电子邮件:" + ViewState["email"].ToString());
}
+++ 说明
(1) 所谓“ViewState[]”,在ASP.NET中,所有新创建的页面默认情况下都会继承System.Web.UI.Page类,这个类有个属性——“ViewState[]”,它用来在你对同一个页面的多次请求中,保存服务器控件的状态。
(2) 我们都知道,客户端每次向服务器请求页面,页面都会被重新刷新,这意味着,你之前的页面里的东西就会消失,但如果你想保存某些信息,怎么办?那么,你可以将想要保存的信息放在“ViewState[]”里。如果你看过别人自己写的控件,比如分页控件,你多多少少就会明白。
(2) 虽MSDN说“ViewState[]”是用来保存控件状态的,但可以把它简单地理解为保存变量、你不想丢失的变量,页面的刷新不会影响该变量的值,除非你改变它;
(3) 这种方式相当常用,它可以用来保存简单变量或是类的一个对象,尤其是保存对象,这是其他方法所不能替代的。因为,这种方式保存的值不会被刷新。
相关文档:
今早有个网友问到我这问题,以前我都是直接在数据库中存文件名的,还没有试过存储整张图片到数据库中,上网搜索了一下,自己又测试了一番,代码如下:
建立保存图片的表的SQL语句:
Sql代码 < width="14" height="15" src="javascripts/syntaxhighlighter/clipboard_new.swf" pluginspage="http://w ......
整数或者小数:^[0-9]+\.{0,1}[0-9]{0,2}$
只能输入数字:"^[0-9]*$"。
只能输入n位的数字:"^\d{n}$"。
只能输入至少n位的数字:"^\d{n,}$"。
只能输入m~n位的数字:。"^\d{m,n}$"
只能输入零和非零开头的数字:"^(0|[1-9][0-9]*)$"。
只能输入有两位小数的正实数:"^[0-9]+(.[0-9]{2})?$"。
只能输入有1~3位小数的 ......
HttpContext.Current.Request.Url.ToString() 并不可靠。
如果当前URL为
http://localhost/search.aspx?user=http://csharp.xdowns.com&tag=%BC%BC%CA%F5
通过HttpContext.Current.Request.Url.ToString()获取到的却是
http://localhost/search.aspxuser=http://csharp.xdowns.com&tag=¼&fra ......
例一:
+++ 第一个页面
++ 页面代码如下:
<div>
<a href="QueryString04.aspx?blog=DoooooNetooooot.blog.tianya.cn&qq=516535763">超链接传值示例</a>
</div>
++ 后台代码如下:
(略)
+++ 第二个页面
++ 页面代码如下:
(略)
++ 后台代码如下:
protected void Page_Load( ......