知识大全 ASP.Net中页面之间传参方法

Posted

篇首语:世事洞明皆学问,人情练达即文章。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 ASP.Net中页面之间传参方法相关的知识,希望对你有一定的参考价值。

ASP.Net中页面之间传参方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

    ASP NET提供了卓越的事件驱动编程模型 让开发者简化了应用程序的总体设计 但是这个也造成了它固有的一些问题 例如 使用传统的ASP里 我们可以通过使用POST方法很容易地实现页面间传递值 同样的事情 在使用事件驱动编程模型的ASP NET就不是那么容易了 当然了 我们仍然有一些方法可以实现同样的功能         本文将试着使用不同的可能的方法来解决这个问题 但可以预见是 本文将包含使用querystring session变量以及server Transfer方法来实现页面间的值传递         使用QueryString        使用QuerySting在页面间传递值已经是一种很老的机制了 这种方法的主要优点是实现起来非常简单 然而它的缺点是传递的值是会显示在浏览器的地址栏上的(不安全) 同时又不能传递对象 但是在传递的值少而安全性要求不高的情况下 这个方法还是一个不错的方案         使用这种方法的步骤如下         使用控件创建web表单(form)        创建可以返回表单的按钮和链接按钮        在按钮或链接按钮的单击事件里创建一个保存URL的字符变量        在保存的URL里添加QueryString参数        使用Response Redirect重定向到上面保存的URL 下面的代码片断演示了如何实现这个方法         源页面代码         private void Button _Click (object sender System EventArgs e)                string url;        url= anotherwebform aspx?name= + TextBox Text + &email= + TextBox Text;        Response Redirect(url)                 目标页面代码         private void Page_Load (object sender System EventArgs e)                Label Text=Request QueryString[ name ];        Label Text=Request QueryString[ email ];                使用Session变量        使用Session变量是可以在页面间传递值的的另一种方式 在本例中我们把控件中的值存在Session变量中 然后在另一个页面中使用它 以不同页面间实现值传递的目的 但是 需要注意的是在Session变量存储过多的数据会消耗比较多的服务器资源 在使用session时应该慎重 当然了 我们也应该使用一些清理动作来去除一些不需要的session来降低资源的无谓消耗         使用Session变量传递值的一般步骤如下         在页面里添加必要的控件        创建可以返回表单的按钮和链接按钮        在按钮或链接按钮的单击事件里 把控件的值添加到session变量里        使用Response Redirect方法重定向到另一个页面        在另一个页面提取session的值 在确定不需要使用该session时 要显式清除它 下面的代码片断演示了如何实现这个方法         源页面代码         private void Button _Click (object sender System EventArgs e)                //textbox and textbox are webform controls        Session[ name ]=TextBox Text;        Session[ email ]=TextBox Text;        Server Transfer( anotherwebform aspx )                 目标页面代码         private void Page_Load (object sender System EventArgs e)                Label Text=Session[ name ] ToString()         Label Text=Session[ email ] ToString()         Session Remove( name )         Session Remove( email )                 使用Server Transfer        这个方法相比上面介绍的方法稍微复杂一点 但在页面间值传递中却是特别有用的 使用该方法你可以在另一个页面以对象属性的方式来存取显露的值 当然了 使用这种方法 你需要额外写一些代码以创建一些属性以便可以在另一个页面访问它 但是 这个方式带来的好处也是显而易见的 总体来说 使用这种方法是简洁的同时又是面向对象的         使用这种方法的整个过程如下         在页面里添加必要的控件        创建返回值的Get属性过程        创建可以返回表单的按钮和链接按钮        在按钮单击事件处理程序中调用Server Transfer方法转移到指定的页面        在第二个页面中 我们就可以使用Context Handler属性来获得前一个页面实例对象的引用 通过它 就可以使用存取前一个页面的控件的值了 以下代码综合实现上述步骤过程的代码 源页面代码 把以下的代码添加到页面中        public string Name                get return TextBox Text;                 public string EMail                get return TextBox Text;                 然后调用Server Transfer方法        private void Button _Click (object sender System EventArgs e)                Server Transfer( anotherwebform aspx )                 目标页面代码         private void Page_Load (object sender System EventArgs e)                //create instance of source web form        WebForm wf ;        //get reference to current handler instance        wf =(WebForm )Context Handler;        Label Text=wf Name;        Label Text=wf EMail;                通过本文的对页面之间传递参数几种方法的介绍 希望对你有帮助 cha138/Article/program/net/201311/11725

相关参考

知识大全 Asp.Net中动态页面转静态页面

Asp.Net中动态页面转静态页面  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  关于在AspN

知识大全 asp.net中javascript的引用(直接引入和间接引入)

  Aspnet中引入Javascript的方法有很多在做牛腩的时候主要讲了两种个人认为可以分为直接引入和间接引入一直接引入在前台页面调用自定义的javascript函数打开前台页面在head元素之间

知识大全 ASP.NET中如何对页面输出缓存

ASP.NET中如何对页面输出缓存  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinz

知识大全 ASP.NET中Control基类清理页面状态

ASP.NET中Control基类清理页面状态  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  控

知识大全 ASP.NET中防止页面多次提交的代码实现

ASP.NET中防止页面多次提交的代码实现  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  此处提

知识大全 ASP.NET中遍历页面的所有button控件

ASP.NET中遍历页面的所有button控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!通用代

知识大全 在ASP.NET 2.0中使用页面导航控件

在ASP.NET2.0中使用页面导航控件  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  几乎每个

知识大全 asp.net 2.0中使用sitemapDATAsource做页面导航

asp.net2.0中使用sitemapDATAsource做页面导航  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶

知识大全 ASP.NET中页面传值的几种方法

ASP.NET中页面传值的几种方法  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!表单提交 

知识大全 ASP.NET中页面间传值各种方法介绍

ASP.NET中页面间传值各种方法介绍  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  一目前在A