ASP2.0-跨页面传值技巧总结

.net(c#)跨页面传值方法总结   .net(c#)跨页面传值方法总结2009-07-17 11:15方式1:在接收页 的html代码里加上一行: WebForm1 fp=(WebForm1)Context.Handler;this.TextBox1.Text=fp.name; //name 是第一页的public变量Context 提供对整个当前上下文(包括请求对象)的访问。您可以使用此类共享页之间的信息。方式2 阅读详情

 

 

关于页面传值的方法,引发了很多讨论。看来有很多人关注这个,我就我个人观点做了些总结,希望对大家有所帮助。

1.  使用QueryString变量

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

a.aspx的C#代码

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


b.aspx中C#代码
private void Page_Load(object sender, EventArgs e)
{
    Label2.Text = Request.QueryString["name"];
}

2.  使用Application 对象变量

Application对象的作用范围是整个全局,也就是说对所有用户都有效。其常用的方法用Lock和UnLock。

a.aspx的C#代码

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

b.aspx中C#代码

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

3.  使用Session变量

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

a.aspx的C#代码

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

b.aspx中C#代码

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

4.  使用Cookie对象变量

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

a.aspx的C#代码

private void Button1_Click(object sender, System.EventArgs e)
{
    HttpCookie cookie_name = new HttpCookie("name");
    cookie_name.Value = Label1.Text;
    Reponse.AppendCookie(cookie_name);
    Server.Transfer("b.aspx");
}

b.aspx中C#代码

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

5.  使用Server.Transfer方法

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

a.aspx的C#代码

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

b.aspx中C#代码

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


 

总结(Ajax无刷新删除和跨页面传值) 今天下午通过老师讲解我深刻的认知到了自己的不足,首先,分配时间不足,而且写编程不熟练,特别是Ajax无刷新删除和跨界面传值所以打算写一篇加深一下今天听课后的印象 一、Ajax无刷新删除 1、首先在编辑操作模板时添加一个A标签用来传递ID <a href="#" class="delete" data-id='<%# Eval("Id") %>'>删除</a> 2、在Ul层里创建一个一般处理程序(后缀名为ashx) var id = c 阅读详情

相关推荐

asp.net获取后台之间传值

这是我从网上找到的不错的获取(绑定)后台代码中变量值,有好几种方法,挺详细的,就复制下来了

ASP.NET跨页面传值技巧(VB.NET篇)

关于页面传值的方法,引发了很多讨论。看来有很多人关注这个,我就我个人观点做了些总结,希望对大家有所帮助。 1.  使用QueryString变量 QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传递数组或对象的话,就不能用这个方法了。下面是一个例子: a.as...

weixin_34321977的博客 361

手把手教你用STM32的SPI驱动MCP2517FD实现CAN FD通信(附完整代码)

本文详细介绍了如何使用STM32通过SPI驱动MCP2517FD实现CAN FD通信,涵盖硬件连接、SPI驱动编写、寄存器配置及数据收发实战。提供完整代码示例和常见问题排查指南,帮助开发者快速构建高可靠性的CAN FD通信系统,适用于汽车电子和工业控制等领域。

weixin_30607029的博客 674

vb.net 数组均为传址,变量可以传值

Private Sub Button3_Click(sender As Object, e As EventArgs) Handles Button3.Click Dim a(1), b As Integer b = 5 For i = 0 To 1 a(i) = i Next Console.WriteLine("改变前的值:") For i = 0 To 1 .

m0_52395907的博客 523

【SWAT水文模型】SWAT-CUP参数率定与模型验证实战指南

本文提供了SWAT水文模型参数率定与模型验证的完整实战指南。详细介绍了如何使用SWAT-CUP工具,特别是SUFI-2算法,进行自动化参数校准,并阐述了模型验证的关键步骤以避免过度拟合。内容涵盖从工程搭建、核心参数选择、迭代优化到结果分析与常见问题排查的全流程,旨在帮助用户提升SWAT模型模拟的准确性与可靠性。

weixin_29072299的博客 499

接口操作MySQL跟MongoDB事务回滚问题

通常使用的事务注解:@Transactional 是不会对MongoDB生效的,但是在一些生产接口中无法避免同时使用MySQL跟MongoDB的操作。

weixin_45932023的博客 1578

【VB.NET】窗体之间传值

Form1.vb的VB.Net代码: Private  Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click    form2.Instance(Me)    form2.ShowDialog()End sub Form2.vb的VB.Net代码: Pr...

weixin_34380948的博客 615

SAP PP工艺路线Routing保姆级配置指南:从CA01创建到替代/并行顺序实战

本文详细解析SAP PP模块中工艺路线(Routing)的配置与应用,从基础创建(CA01)到高级功能如替代顺序和并行顺序的实战操作。通过真实案例演示,帮助用户掌握SAP PP工艺路线的精细化管理,提升生产流程效率。

weixin_30898555的博客 388

VB.Net 两个窗体之间的传值及修改

在做机房收费系统,遇到这样一个问题:在上下机窗体(FrmLoadOnff)中,存在一个文本框(txtCountOnline)显示当前上机的学生数。在查询学生上机状态的窗体中,存在全部学生下机菜单(menuAllLoadoff)、和选中学生下机菜单(menuSelectLoadoff)。界面分别如下: 上下机窗体(FrmLoadOnff):

大道至简 1万+

在国产麒麟V10(arm64)上离线部署Docker 24.0.6和Compose 2.30.1,保姆级避坑实录

本文详细介绍了在国产麒麟V10(arm64)操作系统上离线部署Docker 24.0.6和Compose 2.30.1的完整流程,包括环境准备、架构认知、安装步骤、系统服务优化及生产环境加固。特别针对ARM64架构的兼容性问题提供了解决方案,帮助用户在信创环境中高效部署容器化技术。

weixin_30342209的博客 484

VMware player桥接模式不能联网的解决方法

VMware虚拟机下主要使用两种网络连接方式:桥接模式、NAT模式。 桥接模式:查一下,虚拟机独立IP。 NAT模式:与电脑共享IP、需要映射应用服务的端口。 我的需求需要独立IP,于是使用桥接。 网络连接失败。 个人主机系统的网络设置: 设置 - 网络和 Internet - 更改适配器设置 给虚拟机设置网络适配器 只保留,点击确定,确定。 重新运行虚拟机。 ...

Mark_md的博客 9447

VB.NET学习笔记:再谈WinForm窗体间相互传值(单值、多值)——属性、委托和事件

在《VB.NET学习笔记:窗体显示及互相传值》一文中,通过默认的窗体实例、保持窗体引用的全局性或在窗体构造函数中把窗体指针作为参数传递,这些方法都是直接操作窗体中的任何控件来读取和改变窗体内的信息。这样会在窗体间大量互相引用各自的成员,造成了彼此之间存在着很大的耦合性,非常不利于窗体模块间的独立,破坏了类型封装性的原则。在.NET下,还为我们提供了另外一种强大的机制来实现窗体通信,这就是委托。 属...

zyjq52uys的博客 3588

UA-DETRAC数据集转YOLO格式

UA-DETRAC转YOLO

lafsca5的博客 9107

ASP.NET的跨页面控件传值常用方法

·ASP.NET 2.0开始有得一项新功能,是ASP所不具备的 ·可以理解为,被设置了PostBackURL的控件,将整个页面提交给服务器,服务器有了访问这个被提交页面上的空间的权限。 `IsPostBack(是否回发页面) IsPostBack是Page类有一个bool类型的属性,用来判断针对当前Form的请求是第一次还是非第一次请求。当IsPostBack=t

浓汤拉面的专栏 1261

openwrt之luci通信原理(一)

从模板中分离,每个LuCI2子页面也需要一个定义并存放在/www/luci2/view/目录下的一个视图,视图是使用了子页面特定对象的L.ui.view扩展的JavaScript文件。有一点需要注意的是需要提供execute方法,创建视图失败有几种原因,特别是当它需要ubus加载额外的数据使用的时候。所以在execute方法中提供成功或者失败的信息是有意义的。不幸的是在异步方法加载特定数据的时候,不能简单的返回true或false,解决的方法是返回一个Promise对象来运行推迟提供是否成功的信息。

1150

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Asp.net中进行跨页面传值的常用方法

跨页面傳值 QueryString Form-Post控件傳遞 Cookies傳遞 Application傳遞 Session傳遞 ViewState["DataTable_Detail"] QueryString 調用方法: Request.QueryString[“ParaName”]; 傳遞信息的大小是2K 2k中包括地址“Http://....” 獲取信息的形式,只能是一個字符串 Server.Transfer Response.Redirect的小Bug Server.Tra..

qq_39656138的博客 454

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

asp.net跨页面传值之控件传递

asp.net跨页面传值之控件传递

一字并肩王的博客 621

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

ASP.NET 2.0中实现跨页面提交

  在ASP.net 1.X 版本中,页面都是提交到自己本身,并不能方便的指定需要提交的目的页面。例如FirstPage.aspx中的button只能提交到FirstPage.aspx,而不能提交到SecondPage.aspx。很多时候,ASP.NET 1.X这样工作方式使我们的开发方式受到不少限制。熟悉ASP/JSP/PHP的朋友大概很不习惯,因为以前经常使用的提交方式突然无法使用,虽然也有解

Hank_Huang的专栏 1302

ASP.NET 2.0中的跨页面提交

 ASP.NET 2.0中的跨页面提交简介        在ASP.NET 1.X 版本中,页面都是提交到自己本身,并不能方便的指定需要提交的目的页面。例如FirstPage.aspx中的button只能提交到FirstPage.aspx,而不能提交到SecondPage.aspx。很多时候,ASP.NET 1.X这样工作方式使我们的开发方式受到不少限制。熟悉ASP/JSP/PHP的朋

李涛的技术专栏 1160

ASP.NET中页面间的传值方式和各方式的优缺点

ASP.NET中页面间的传值方式主要有:URL、Session、Cookies、Server.Transfer、Application和跨页面传送六种。以下是这六种的优缺点: 1.URL传值 这是经典的传值方式,这种方法的使用非常简单,不过所传递的值是会显示在浏览器的地址栏上的,而且不能传递对象。所以这种方法一般用于传递的值少且安全性要求不高的情况下。在*.aspx页面开发中可以使用超级链接文

SpringFileld的专栏 971

列举ASP.NET页面之间传递值的几种方式

 列举ASP.NET页面之间传递值的几种方式---------------------------------------------------------------------------URL、Session、Cookies、Server.Transfer、Application和跨页面传送。-------------------------------------

joy_liang的专栏 3928

asp.net2.0的跨页面提交

asp.net2.0的跨页面提交简介        在ASP.NET 1.X 版本中,页面都是提交到自己本身,并不能方便的指定需要提交的目的页面。例如FirstPage.aspx中的button只能提交到 FirstPage.aspx,而不能提交到SecondPage.aspx。很多时候,ASP.NET 1.X这样工作方式使我们的开发方式受到不少限制。熟悉ASP/JSP/PHP的朋友大概很不习

→遇建← 799

ASP.NET中页面间传值,以及Gridview中的控件示例

 文章开始的声明:优快云上高手太多,看到这样简单的东西当然会发笑,我是一个菜鸟,请高手跳过,谢谢。 本来是没打算写的,一个学妹问起,我就干脆写了。首先,说明一下ASP.NET页面间传值的一下方法。方法有一些:1,url传值,如: CheckPwd.aspx?user=uservalue&pwd=pwdvalue 2,Session传值 如:Session("role")="A

好好学习,天天代码 5420
上一篇: .NET精辟要点整理(补充中...)
下一篇: Windows2003-控制面板失效的解决办法
MasterFT
博客等级 码龄20年 48粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值