iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >ASP.NET页面中怎么传递值
  • 413
分享到

ASP.NET页面中怎么传递值

2023-06-17 10:06:56 413人浏览 泡泡鱼
摘要

本篇文章给大家分享的是有关asp.net页面中怎么传递值,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、QueryStringQueryString是一种非常简单的传值方式,

本篇文章给大家分享的是有关asp.net页面中怎么传递值,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

一、QueryString

QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。

这种方法的优点:1.使用简单,对于安全性要求不高时传递数字或是文本值非常有效。

这种方法的缺点:1.缺乏安全性,由于它的值暴露在浏览器的URL地址中的;2.不能传递对象。

使用方法:1.在源页面的代码中用需要传递的名称和值构造URL地址;2.在源页面的代码用Response.Redirect(URL);重定向到上面的URL地址中;3.在目的页面的代码使用Request.QueryString["name"];取出URL地址中传递的值。

例子:(1)a.aspx

private void Button1_Click(object sender, System.EventArgs e)   {   string s_url;   s_url = "b.aspx?name=" + Label1.Text;   Response.Redirect(s_url);   }

(2)b.aspx

private void Page_Load(object sender, EventArgs e)   {   Label2.Text = Request.QueryString["name"];   }

二、Session

想必这个肯定是大家使用中最常见的用法了,其操作与Application类似,作用于用户个人,所以,过量的存储会导致服务器内存资源的耗尽。

优点:1.使用简单,不仅能传递简单数据类型,还能传递对象;2.数据量大小是不限制的。

缺点:1.在Session变量存储大量的数据会消耗较多的服务器资源;2.容易丢失。

使用方法:1.在源页面的代码中创建你需要传递的名称和值构造Session变量:Session["Name"]="Value(Or Object)";2.在目的页面的代码使用Session变量取出传递的值。Result = Session["Nmae"]

注意:session不用时可以销毁它,销毁的方法是:清除一个:Session.Remove("session名");清除所有:Session.Clear();

例子:(1)a.aspx

private void Button1_Click(object sender, System.EventArgs e)   {   Session["name"] = Label.Text;   }

(2)b.aspx

private void Page_Load(object sender, EventArgs e)   {   string name;   name = Session["name"].ToString();   }

三、Cookie

这个也是大家常使用的方法,Cookie用于在用户浏览器上存储小块的信息,保存用户的相关信息,比如用户访问某网站时用户的ID,用户的偏好等,用户下次访问就可以通过检索获得以前的信息。所以Cookie也可以在页面间传递值。Cookie通过Http头在浏览器和服务器之间来回传递的。Cookie只能包含字符串的值,如果想在Cookie存储整数值,那么需要先转换为字符串的形式。

与Session一样,其是什对每一个用户而言的,但是有个本质的区别,即Cookie是存放在客户端的,而session是存放在服务器端的。而且Cookie的使用要配合ASP.net内置对象Request来使用。

优点:1.使用简单,是保持用户状态的一种非常常用的方法。比如在购物网站中用户跨多个页面表单时可以用它来保持用户状态。

缺点:1.常常被人认为用来收集用户隐私而遭到批评;2.安全性不高,容易伪造。

使用方法:1.在源页面的代码中创建你需要传递的名称和值构造Cookie对象:

HttpCookie objCookie = new HttpCookie("myCookie","Hello,Cookie!");  Response.Cookies.Add(cookie);

在目的页面的代码使用Cookie对象取出传递的值:Result = Request.Cookies[ "myCookie" ].Value;

例子:(1)a.aspx

private void Button1_Click(object sender, System.EventArgs e)  {  HttpCookie objCookie = new HttpCookie("myCookie","Hello,Cookie!");  Response.Cookies.Add(objCookie);   }

(2)b.aspx

string myName1Value;  myName1Value = Request.Cookies[ "myCookie" ].Value;

四、Application

Application对象的作用范围是整个全局,也就是说对所有用户都有效。它在整个应用程序生命周期中都是有效的,类似于使用全局变量一样,所以可以在不同页面中对它进行存取。它和Session变量的区别在于,前者是所有的用户共用的全局变量,后者是各个用户独有的全局变量。

可能有人会问,既然所有用户都可以使用application变量,那他可以用在什么场合呢?这里举个例子:网站访问数。多个请求访问时都可以对它进行操作。

优点:1.使用简单,消耗较少的服务器资源;2.不仅能传递简单数据,还能传递对象;3.数据量大小是不限制的。

缺点:1.作为全局变量容易被误操作。所以单个用户使用的变量一般不能用application。

使用方法:1.在源页面的代码中创建你需要传递的名称和值构造Application变量:Application["Nmae"]="Value(Or Object)";2.在目的页面的代码使用Application变量取出传递的值。Result = Application["Nmae"]

注意:常用lock和unlock方法用来定和解锁,为了防止并发修改。

例子:(1)a.aspx

private void Button1_Click(object sender, System.EventArgs e)   {   Application["name"] = Label1.Text;   }

(2)b.aspx

private void Page_Load(object sender, EventArgs e)   {   string name;   Application.Lock();   name = Application["name"].ToString();   Application.UnLock();   }

五、Server.Transfer

这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效。

Server.Transfer是从当前的ASPX页面转到新的ASPX页面,服务器端执行新页并输出,在新页面中通过Context.Handler来获得前一个页面传递的各种数据类型的值、表单数据、QueryString.由于重定向完全在服务器端完成,所以客户端浏览器中的URL地址是不会改变的。调用Server.Transfer时,当前的ASPX页面终止执行,执行流程转入另一个ASPX页面,但新的ASPX页面仍使用前一ASPX页面创建的应答流。

ps:比较Server.Transfer和Response.Redirect的区别。

(1)Server.Transfer在服务器端完成,所以客户端浏览器中的URL地址是不会改变的;Response.Redirect是客户端完成,向服务器端提出新的页面处理请求,所以客户端浏览器中的URL地址是会改变的。

(2)Server.Transfer在服务器端完成,不需要客户端提出请求,减少了客户端对服务器端提出请求。

(3)Server.Transfer只能够转跳到本地虚拟目录指定的页面,也就是工程项目中的页面,而Response.Redirect则十分灵活,可以跳转到任何URL地址。

(4)Server.Transfer可以将前一个页面的各种类型的值传到新的页面;Response.Redirect则只能借助URL中带参数或是结合上面四种办法把各种类型的值传到新的页面。

优点:1.直接在服务器端重定向,使用简单方便,减少了客户端对服务器端提出请求;2.可以传递各种数据类型的值和控件的值。

缺点:1.客户端浏览器中的URL地址是不改变,会导致在新的页面可能出现一些意想不到的问题。比如如果源页面和目的页面不在同一个虚拟目录或其子目录下,那么使用相对路径的图片、超链接都会导致错误的指向。

使用方法:1.在源页面的代码中,使用Page类的Server.Transfer跳到另一个页面传递页面数据:Server.Transfer("b.aspx","false");2.在目的页面中,使用Context.Handler来接收数据:FORMerPage formerPage = (FormerPage)Context.Handler; 然后用formerPage的属性和方法来获取前一个页面的值,或者直接用Context.Items["myParameter "]

例子:(1)a.aspx

public string Name   {   get{ return Label1.Text;}   }   private void Button1_Click(object sender, System.EventArgs e)   {   Server.Transfer("b.aspx");   }

(2)b.aspx

private void Page_Load(object sender, EventArgs e)   {   a newWEB; //实例a窗体   newWeb = (source)Context.Handler;   string name;   name = newWeb.Name;   }

以上就是ASP.NET页面中怎么传递值,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网精选频道。

--结束END--

本文标题: ASP.NET页面中怎么传递值

本文链接: https://www.lsjlt.com/news/288363.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • ASP.NET页面中怎么传递值
    本篇文章给大家分享的是有关ASP.NET页面中怎么传递值,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一、QueryStringQueryString是一种非常简单的传值方式,...
    99+
    2023-06-17
  • ASP.NET中怎么实现页面间值传递
    这篇文章将为大家详细讲解有关ASP.NET中怎么实现页面间值传递,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。ASP.NET页面间值传递***种方法:通过URL链接地址传递send.aspx...
    99+
    2023-06-17
  • ASP.NET中怎么实现页面间数据传递
    ASP.NET中怎么实现页面间数据传递,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。1、ASP.NET页面间数据传递的各种方法和分析1 使用Querystring 方法Qu...
    99+
    2023-06-17
  • ASP.NET页面间数据传递的方法是什么
    这篇文章主要讲解了“ASP.NET页面间数据传递的方法是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ASP.NET页面间数据传递的方法是什么”吧!Web页面是无状态的,服务器对每一次请...
    99+
    2023-06-17
  • 怎么将SAPC4CTI页面的值传递到Embedded Component里去
    这篇文章主要讲解了“怎么将SAPC4CTI页面的值传递到Embedded Component里去”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么将SAPC4CTI页面的值传递到Embedd...
    99+
    2023-06-03
  • jsp页面间怎么传值
    在JSP页面间传递值可以通过以下几种方式:1. 使用URL参数传递值:在URL中添加参数,例如`page.jspparam1=val...
    99+
    2023-09-27
    jsp
  • JSP中怎么实现页面间传递参数
    JSP中怎么实现页面间传递参数,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。(1)直接在URL请求后添加如:< a href="thexuan.jspact...
    99+
    2023-06-17
  • 全面理解Java中的引用传递和值传递
    目录1.基本类型和引用类型在内存中的保存2.变量的基本类型和引用类型的区别3.引用传递和值传递4.结论关于Java传参时是引用传递还是值传递,是一个讨论比较多的话题, 有说Java中...
    99+
    2024-04-02
  • ajax怎么动态传递jsp等页面
    这篇文章主要讲解了“ajax怎么动态传递jsp等页面”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ajax怎么动态传递jsp等页面”吧! ...
    99+
    2024-04-02
  • vue怎么实现跨页面传递与接收数组并赋值
    今天小编给大家分享一下vue怎么实现跨页面传递与接收数组并赋值的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。跨页面传递与接收...
    99+
    2023-06-30
  • 怎么在Java中实现值传递和引用传递
    怎么在Java中实现值传递和引用传递?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Java的特点有哪些Java的特点有哪些1.Java语言作为静态面向对象编程语言的代表,实现了...
    99+
    2023-06-14
  • vue怎么通过按钮传递新页面
    在Vue中,我们可以通过路由来实现页面之间的跳转。在本文中,我们将探讨如何在Vue中使用按钮传递到新页面。我们将使用Vue的官方路由器插件Vue Router。Vue Router是Vue.js官方路由器。它允许我们设置路由表,将一些URL...
    99+
    2023-05-23
  • 页面javascript怎么获取后台传到页面的值
    小编给大家分享一下页面javascript怎么获取后台传到页面的值,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!JavaScript的特点1.JavaScript主要用来向HTML页面添加交互行为。2.JavaScript...
    99+
    2023-06-14
  • Java中的值传递和引用传递
    Java中的值传递和引用传递 基本概念 值传递: 传递对象的一个副本,即使副本被改变,也不会影响源对象,因为值传递的时候,实际上是将实参的值复制一份给形参。 引用传递: 传递的并不是实际的对象,而是对...
    99+
    2023-09-15
    java 开发语言 jvm
  • 怎么在HTML5中利用sessionStorage实现页面传值
    怎么在HTML5中利用sessionStorage实现页面传值?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在客户端存储的方法有两种:  localStorage: ...
    99+
    2023-06-09
  • 使用springMVC怎么将Model数据传递到jsp页面中
    使用springMVC怎么将Model数据传递到jsp页面中?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在action中存放数据,代码如下:@Controller // 加入...
    99+
    2023-05-31
    springmvc model jsp
  • react页面传值刷新后值消失怎么办
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。react页面传值刷新后值消失怎么办?解决react路由跳转传参刷新页面后参数丢失问题import { useHistory } from 're...
    99+
    2023-05-14
    刷新 React
  • html页面跳转传递参数
    HTML页面跳转传递参数是Web开发中常用的技术,通过传递参数可以实现页面之间的数据交互和信息传递,为用户提供更加个性化的服务。本文将介绍如何实现HTML页面跳转传递参数的几种方法。一、URL参数传递URL参数传递是最常用的HTML页面跳转...
    99+
    2023-05-14
  • JavaScript中值传递和引用传递有什么区别
    JavaScript中值传递和引用传递有什么区别?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。JavaScript是什么JavaScript是一种直译式的脚本语言,其解释器被称...
    99+
    2023-06-14
  • 微信小程序中页面跳转传递值的方法有哪些
    这篇文章主要介绍了微信小程序中页面跳转传递值的方法有哪些,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。微信小程序 页面跳转传递值微信小程序导...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作