今天在向数据库插入数据,之后使用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跳转页面抛出异常:正在终止线程的更多相关文章

  1. Response.Redirect("");Server.Transfer("")跳转页面的区别

      Response.Redirect("") Server.Transfer("") 转向其他站点 能 不能(只能站内转向) 是否可带QueryString参 ...

  2. 页面跳转 Server.Transfer和 Response.Redirect的区别

    1.Server.Transfer 用于把处理的控制权从一个页面转移到另一个页面,在转移的工程中没有离开服务器内部控件(如request,session等)保存的信息不变.因此你能从a页面跳转到b页面 ...

  3. ASP.NET页面传值之Server.Transfer 和Response.Direct

    先看实例: B.apsx:         public string TextBox1Text         {             get             {             ...

  4. ASP.NET页面之间传值的方式之Server.Transfer(个人整理)

    Server.Transfer 这个方法相比以前介绍的方法稍微复杂一点,但在页面间值传递中却是特别有用的,使用该方法你可以在另一个页面以对象属性的方式来存取显露的值,当然了,使用这种方法,你需要额外写 ...

  5. Server.Transfer 页面之间传值

    server.transfer 特点: 1:大家熟悉的一个特点,用server.transfer 跳转到新页面时,浏览器的地址是没有改变的(因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行 ...

  6. ASP.NET页面之间传值Server.Transfer(4)

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

  7. Webform server.transfer 用法

    server.transfer 特点: 1:大家熟悉的一个特点,用server.transfer 跳转到新页面时,浏览器的地址是没有改变的(因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行 ...

  8. server.transfer 用法

    server.transfer 特点: 1:大家熟悉的一个特点,用server.transfer 跳转到新页面时,浏览器的地址是没有改变的(因为重定向完全在服务器端进行,浏览器根本不知道服务器已经执行 ...

  9. Server Transfer()和Response.Redirect()的使用

    一.Server Transfer() Server.Transfer:对于当前请求,终止当前页的执行,并使用指定的页url路径来开始执行一个新页. 1. Server.Transfer只能够转跳到本 ...

随机推荐

  1. 转:Red Hat JBoss团队发布WildFly 8,全面支持Java EE 7并包含全新的嵌入式Web服务器

    原文来自于:http://www.infoq.com/cn/news/2014/02/wildfly8-launch Red Hat的JBoss部门今天宣布WildFly 8正式发布.其前身是JBos ...

  2. RazorEngine 学习笔记

    refer : https://github.com/Antaris/RazorEngine 微软的模板编辑器. Install-Package RazorEngine using RazorEngi ...

  3. VC++中调用cmd的集中方式

    1. system方法: 原型: int __cdecl system(const char *); 例如: system("ipconfig"); 2. WinExec方法: 相 ...

  4. NERDTree这个插件的用法简介

    事情是这样子的,想做做李治军老师班的操作系统实验,但是Linux上的gedit太简陋了(这个简陋程度堪比Windows环境下的"记事本"),被杨世祺大神嘲笑了.我心想既然在linu ...

  5. MySQL慢查询(一) - 开启慢查询

    一.简介 开启慢查询日志,可以让MySQL记录下查询超过指定时间的语句,通过定位分析性能的瓶颈,才能更好的优化数据库系统的性能. 二.参数说明 slow_query_log 慢查询开启状态slow_q ...

  6. [深入React] 9.小技巧

    如果组件没有state那就可以精简成一个render function var Item = function(props){ return _('div',null,'名称:'+props.name ...

  7. Python 获取Facebook用户的Friends的爱好中的Top10

    CODE; #!/usr/bin/python # -*- coding: utf-8 -*- ''' Created on 2014-8-12 @author: guaguastd @name: f ...

  8. Linux安装Weblogic9.2

    1.先确认安装的环境是不是LINUX AS 4 [root@yaoxj ~]# cat /etc/issue Red Hat Enterprise Linux AS release 4 (Nahant ...

  9. cocos2d-x 2.x 图层特效Effect(转)

    CCSprite* sp = CCSprite::create("Default.png"); sp->setPosition(ccp(, )); addChild(sp); ...

  10. Python字符串格式符号含义

    ====== #字符串格式化符号含义 #%C 格式化字符串及其ASCLL码 >>> '%c' %97 'a' >>> '%c' % 97 'a' >>& ...