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只能够转跳到本 ...
随机推荐
- 转:基于开源项目OpenCV的人脸识别Demo版整理(不仅可以识别人脸,还可以识别眼睛鼻子嘴等)【模式识别中的翘楚】
文章来自于:http://blog.renren.com/share/246648717/8171467499 基于开源项目OpenCV的人脸识别Demo版整理(不仅可以识别人脸,还可以识别眼睛鼻子嘴 ...
- jquery-qrcode在线生成二维码
通过bower进行获取: y@y:ydkt$ bower install jquery-qrcode --save bower not-cached git://github.com/gcusnieu ...
- Android 检查是否安装SD卡
/** * 检查是否安装SD卡 * @return */ public static boolean checkSaveLocationExists() { String sDCardStatus = ...
- WPF 自己动手来做安装卸载程序
原文:WPF 自己动手来做安装卸载程序 前言 说起安装程序,这也许是大家比较遗忘的部分,那么做C/S是小伙伴们,难道你们的程序真的不需要一个炫酷的安装程序么? 声明在先 本文旨在教大家以自己的方式实现 ...
- 8.2.1.4 Index Merge Optimization 索引合并优化:
8.2.1.4 Index Merge Optimization 索引合并优化: 索引合并方法是用于检索记录 使用多个 范围扫描和合并它们的结果集到一起 mysql> show index fr ...
- 【转】secureCRT使用退格键(backspace)出现^H解决办法
原文网址:http://skykiss.blog.51cto.com/blog/2892603/769771 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将 ...
- Android调用第三方应用
Intent intent=new Intent(); //包名 包名+类名(全路径) intent.setClassName("com.qn.app.store", " ...
- android 各种xml的作用
1.arrays.xml 定义数组 <resources> <string-array name="proxy_types"> <item&g ...
- IntelliJ IDEA创建web项目及异常问题解决
IDEA配置Tomcat: 1.下载Tomcat,本次使用的是apache-tomcat-6.0.43 2.IDEA配置Tomcat 在idea中的Settings(Ctrl+Alt+s)(或者点击图 ...
- 多次绑定click及ajax提交常用方法
<script> $(document).ready(function() { //绑定click $(".exchange_ecv").bind("clic ...