.Net中几种常见的页面跳转传值方法
1、ASP Server对象Execute方法
ASP Server对象的Execute方法可以在执行当前页面的过程中将另一个页面执行结果的内容插入到当前页面的输出中。Execute方法带一个参数,是个字符串,指定要执行的ASP文件的位置。如果提供了绝对路径,这个路径则必须位于同一个应用程序空间中。Execute方法提供了一种服务器端包含的替代方法,并且允许使用者开发自己的可重用模块集合,作为简单的脚本页。传递给主调ASP页面的参数从被执行页中可以得到。被执行页产生的所有输出都被添加到主调页产生的输出中。
提示
Server.Execute(path)适合于将一个完整的页面调入到当前页面,被调入的页面本身也可以是一个完整的ASP页面。但是,它的缺点在于:当前页面定义的过程、函数或者变量在目标页面中不能使用。如果要传递参数,可以将参数保存到Session对象中。
语法
Server.Execute(path)
示例
WebForm1.aspx:
Response.Write("Label1.Text");
Server.Execute("WebForm2.aspx");
WebForm2.aspx:
Response.Write("Label1.Text");
2、使用querystring
querystring是一种非常简单的传值方式,其缺点就是会把要传送的值显示在浏览器的地址栏中,并且在此方法中不能够传递对象。如果你想传递一个安全性不是那么太重要或者是一个简单的数值时,用此方法最好不过了。下面通过一个小例子来完成传值工作,步骤如下:
1、创建一个web form
2、在新建的web form中放置一个button1,在放置两个textbox1,textbox2
3、为button按钮创建click事件
代码如下:
private void button1_click
(object sender, system.eventargs e)
{
string url;
url="webform2.aspx?name=" +
textbox1.text + "&email=" +
textbox2.text;
response.redirect(url);
}
4、新建一个目标页面命名为webform2
5、在webform2中放置两个label1,label2
在webform2的page_load中添加如下代码:
private void page_load
(object sender, system.eventargs e)
{
label1.text=request.querystring["name"];
label2.text=request.querystring["email"];
}
运行,即可看到传递后的结果了。
3、使用session变量
使用session变量传值是一种最常见的方式了,此中方式不仅可以把值传递到下一个页面,还可以交叉传递到多个页面,直至把session变量的值removed后,变量才会消失。举个例子看看:
1、创建一个web form
2、在新建的web form中放置一个button1,在放置两个textbox1,textbox2
3、为button按钮创建click事件
代码如下:
private void button1_click
(object sender, system.eventargs e)
{
session["name"]=textbox1.text;
session["email"]=textbox2.text;
response.redirect("webform2.aspx");
}
4、新建一个目标页面命名为webform2
5、在webform2中放置两个label1,label2
在webform2的page_load中添加如下代码:
private void page_load
(object sender, system.eventargs e)
{
label1.text=session["name"].tostring();
label2.text=session["email"].tostring();
session.remove("name");
session.remove("email");
}
运行,即可看到传递后的结果了。
4、使用server.transfer
虽然这种方法有点复杂,但也不失为一种在页面传值的方式。
举个例子看看:
1、创建一个web form
2、在新建的web form中放置一个button1,在放置两个textbox1,textbox2
3、为button按钮创建click事件
代码如下:
private void button1_click
(object sender, system.eventargs e)
{
server.transfer("webform2.aspx");
}
4、创建过程来返回textbox1,textbox2控件的值代码如下:
public string name
{
get
{
return textbox1.text;
}
}
public string email
{
get
{
return textbox2.text;
}
}
5、新建一个目标页面命名为webform2
6、在webform2中放置两个label1,label2
在webform2的page_load中添加如下代码:
private void page_load
(object sender, system.eventargs e)
{
//创建原始窗体的实例
webform1 wf1;
//获得实例化的句柄
wf1=(webform1)context.handler;
label1.text=wf1.name;
label2.text=wf1.email;
}
.Net中几种常见的页面跳转传值方法的更多相关文章
- 推荐几种PHP实现页面跳转的方法
1.PHP实现页面跳转第一种方法 <?php header("Location:http://www.baidu.com"); ?> header()是php内置函数, ...
- PHP中常见的页面跳转方法
转载自冠威博客 [ http://www.guanwei.org/ ]本文链接地址:http://www.guanwei.org/post/PHPnotes/04/php-redirect-metho ...
- java servlet 几种页面跳转的方法及传值
java servlet 几种页面跳转的方法及传值 java web 页面之间传值有一下这几种方式1.form 表单传递参数2.url地址栏传递参数3.session4.cookie5.appli ...
- js中页面刷新和页面跳转的方法总结
.js中cookie的基本用法简介 2009-12-15 js中页面刷新和页面跳转的方法总结 文章分类:Web前端 关键字: javascript js中页面刷新和页面跳转的方法总结 1.histor ...
- Web设计中打开新页面或页面跳转的方法 js跳转页面
Web设计中打开新页面或页面跳转的方法 一.asp.net c# 打开新页面或页面跳转 1. 最常用的页面跳转(原窗口被替代):Response.Redirect("newpage.aspx ...
- js中页面刷新和页面跳转的方法总结 [ 转自欢醉同学 ]
.js中cookie的基本用法简介 2009-12-15 js中页面刷新和页面跳转的方法总结 文章分类:Web前端 关键字: javascript js中页面刷新和页面跳转的方法总结 1.histor ...
- 微信小程序从零开始开发步骤(六)4种页面跳转的方法
用法:用于页面跳转,相当于html里面的<a></a>标签. API教程:https://mp.weixin.qq.com/debug/wxadoc/dev/component ...
- JS中几种常见的数组算法(前端面试必看)
JS中几种常见的数组算法 1.将稀疏数组变成不稀疏数组 /** * 稀疏数组 变为 不稀疏数组 * @params array arr 稀疏数组 * @return array 不稀疏的数组 */ f ...
- Spring RestTemplate中几种常见的请求方式
https://github.com/lenve/SimpleSpringCloud/tree/master/RestTemplate在Spring Cloud中服务的发现与消费一文中,当我们从服务消 ...
随机推荐
- SocketTcpClient
public class SocketTcpClient { public static string ErrorMsg = string.Empty; private static Socket _ ...
- sql server Datetime格式转换
select CONVERT(varchar, getdate(), 120 ) 2004-09-12 11:06:08 select replace(replace(replace(CONVERT( ...
- ls
-a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件 -h, –human-readable 以容易理解的格式列出文件大小 (例如 1K 234M 2G) -l 除了文件名之外,还将文件 ...
- AHS日志收集的三种方法
硬件环境:(描述实验机器初始环境) 型号 DL380 G8 序列号 配置扩展 备注 软件环境: □ 操作系统:无 连接方式: □ 无 实验步骤: 1在ILO里点information点 ...
- Ubuntu 16.10 在 VMware 上无法安装的解决办法
参考:http://askubuntu.com/questions/840822/ubuntu-16-10-doesnt-work-in-virtual-machine-vmware 1- Edit ...
- Django中csrf错误
CSRF(Cross-site request forgery)跨站请求伪造,也被称为“one click attack”或者session riding,通常缩写为CSRF或者XSRF,是一种对网站 ...
- linux 下 文件权限和文件主
文件与文件夹的权限和所有者 1.chmod -R 755 file 777 含义与来源: 777含义:分别为:所有者.同组用户.其他用户 7的来源:文件有三种操作模式:读4.写2.执行1,分别值为42 ...
- Bugtags 介绍视频 - App 测试 · 从未如此简单
Bugtags 是什么? Bugtags 是移动时代首选 Bug 管理系统,针对不同的使用场景,Bugtags 具有以下强大特性: 移动应用 Bug 管理 Bugtags 可以直接在应用中所见即所得提 ...
- 【knowledgebase】如何知道partition数
对于调优和排错来说,查看一个RDD有多少个partition是非常有用的.常用的查看方法有如下几种: 1.通过SparkUI查看Task执行的partition数 当一个stage执行时,能通过Spa ...
- archlinux 传统方法编译内核linux kernel 3.3.7
From: http://hi.baidu.com/flashgive/item/eaef6326b5eb73d3a417b662 archlinux中传统方法编译内核 1)下载内核以及补丁并解压: ...