1. Server.Transfer跳转页面抛出异常:正在终止线程
今天在向数据库插入数据,之后使用Server.Transfer跳回本页面时,抛出异常:正在终止线程
ry
{
if ( == String.Compare(Password.Text.Trim(), ConfirmPassword.Text.Trim()))//两次输入密码相同
{
MembershipUser mu = Membership.CreateUser(UserName.Text, Password.Text);//添加注册用户
Roles.AddUserToRole(UserName.Text, "worker"); //添加角色
String strConn = "server=.;database=ComInfo;integrated security=true;";//连接字符串
SqlConnection conn = new SqlConnection(strConn);//创建数据库链接
conn.Open();//打开连接
String PassUserid = Request.QueryString["C_Id"];
String userid = mu.ProviderUserKey.ToString();//获取注册ID
SqlCommand cmd = new SqlCommand("insert into Emp(E_Name,E_Sex,E_Position,E_Organisation,E_Address,E_Phone,C_Id,User_Id) values(" +
"'" + UserName.Text.Trim() + "'," +
"'" + edt_sex.Text.Trim() + "'," +
"'" + edt_pos.Text.Trim() + "'," +
"'" + edt_dep.Text.Trim() + "'," +
"'" + edt_address.Text.Trim() + "'," +
"'" + edt_phone.Text.Trim() + "'," +
"'" + PassUserid + "'," + //公司ID
"'" + userid + "'" + //用户注册ID
")", conn);//sql语句,向Emp表添加数据
cmd.ExecuteNonQuery();
conn.Close();
Server.Transfer("~/User/Imformation.aspx");
} }
else
Response.Write("<script>window.alert('两次输入的密码不同!');</script>"); }
catch (Exception ex)
{
Response.Write("<script>window.confirm('" + ex.Message.ToString() + "');</script>");
}
原因:Server.Transfer的执行,将会内部调用Response.End,将此执行切换到应用程序的事件管线中的 Application_EndRequest 事件,同时抛出ThreadAbortException 异常,异常信息为“正在中止线程”。
解决办法:将Server.Transfer语句放到finally中,不再抛出异常
finally
{
Server.Transfer("~/User/Imformation.aspx");
}
1. Server.Transfer跳转页面抛出异常:正在终止线程的更多相关文章
- Response.Redirect("");Server.Transfer("")跳转页面的区别
Response.Redirect("") Server.Transfer("") 转向其他站点 能 不能(只能站内转向) 是否可带QueryString参 ...
- 页面跳转 Server.Transfer和 Response.Redirect的区别
1.Server.Transfer 用于把处理的控制权从一个页面转移到另一个页面,在转移的工程中没有离开服务器内部控件(如request,session等)保存的信息不变.因此你能从a页面跳转到b页面 ...
- ASP.NET页面传值之Server.Transfer 和Response.Direct
先看实例: B.apsx: public string TextBox1Text { get { ...
- ASP.NET页面之间传值的方式之Server.Transfer(个人整理)
Server.Transfer 这个方法相比以前介绍的方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写 ...
- Server.Transfer 页面之间传值
server.transfer 特点: 1:大家熟悉的一个特点,用server.transfer 跳转到新页面时,浏览器的地址是没有改变的(因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行 ...
- ASP.NET页面之间传值Server.Transfer(4)
这个才可以说是面象对象开发所使用的方法,其使用Server.Transfer方法把流程从当前页面引导到另一个页面中,新的页面使用前一个页面的应答流,所以这个方法是完全面象对象的,简洁有效. Serve ...
- Webform server.transfer 用法
server.transfer 特点: 1:大家熟悉的一个特点,用server.transfer 跳转到新页面时,浏览器的地址是没有改变的(因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行 ...
- server.transfer 用法
server.transfer 特点: 1:大家熟悉的一个特点,用server.transfer 跳转到新页面时,浏览器的地址是没有改变的(因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行 ...
- Server Transfer()和Response.Redirect()的使用
一.Server Transfer() Server.Transfer:对于当前请求,终止当前页的执行,并使用指定的页url路径来开始执行一个新页. 1. Server.Transfer只能够转跳到本 ...
随机推荐
- ng-class的使用
例如: td(ng-class="{0:'text-warning',1:'text-primary'}[bj.flag]") {{bj.flag | bjFlagfilter}} ...
- Android 之形状Drawable
形状Drawable资源允许使用 <shape>标记指定基本形状的尺寸.背景.轮廓线,从而定义这些基本形状. 每个形状都包含一个类型(通过shape属性指定).定义该形状尺寸的属性,以及指 ...
- Android应用资源的分类和存储
Android应用资源可以分为两大类1.无法直接访问的原生资源,保存在asset目录下2.可通过R资源清单类访问的资源,保存在res目录下 Android应用资源的存储/res/anim:存放定义补间 ...
- 51单片机C语言学习笔记4:keil C51绝对地址访问
在利用keil进行8051单片机编程的时,常常需要进行绝对地址进行访问.特别是对硬件操作,如DA AD 采样 ,LCD 液晶操作,打印操作.等等.C51提供了三种访问绝对地址的方法: 1. 绝对宏: ...
- [置顶] Android系统移植与调试之------->如何修改Android设备添加3G上网功能
1.首先先来看一下修改前后的效果对比图 step1.插上3G设备前 step2.插上3G设备后,获取信号中.... step3.插上3G设备后,获取到信号 step4.使用3G信号浏览网页 2.下面讲 ...
- 【转】Java中 List的遍历
原文网址:http://blog.csdn.net/player26/article/details/3955906 import java.util.ArrayList; import java.u ...
- 难得一见的HTML5动画欣赏及源码下载
今天要给大家分享一些很酷的HTML5动画演示,并且提供源代码的下载.大部分HTML5动画都是通过canvas实现,当然也有基于SVG的,尤其是第一个,看起来很简单,但是创意却不错. 1.HTML5梦幻 ...
- IT项目外包有哪些注意事项
2015年两会上,李克强总理在政府工作报告中首次提出“互联网+”计划,各种互联网创业项目也如雨后春笋般破土而出.由于很多创业团队并没有自己的技术团队,所以软件外包成为很多创业项目普遍采取的一种方案.在 ...
- java.util.Map.Entry接口
java.util.Map.Entry接口主要就是在遍历map的时候用到,给你个例子:package test;import java.util.*;import java.util.Map.Entr ...
- 使用zTree控件制作的表格形式的树形+数据菜单
測试了一下,兼容ie7以上, chrome opera ff 不使用对方css /*------------------------------------- zTree Style version: ...