asp.net 事务例子
protected void Button1_Click(object sender, EventArgs e)
{
SqlConnection conn;
SqlCommand cmd1, cmd2;
SqlTransaction tra;
conn = new SqlConnection("server=.;database=test;uid=sa;pwd=123");
conn.Open();
tra = conn.BeginTransaction();//开始事务
cmd1 = new SqlCommand("update Test set StuName='佳儿' where StuScore=111", conn);
cmd2 = new SqlCommand("update Test set StuName='fdsafdsafdsfdsafsfsdadsadsadfsafsfsfdf' where StuScore=222", conn);
try
{
cmd1.ExecuteNonQuery();//此句可以成功执行
cmd2.ExecuteNonQuery();//此句故意让其执行失败
tra.Commit();//无异常,提交事务(两句执行都有效)
Response.Write("<mce:script type="text/javascript"><!--
alert('执行成功')
// --></mce:script>");
}
catch
{
tra.Rollback();//出现异常,回滚事务(两句执行都无效)
Response.Write("<mce:script type="text/javascript"><!--
alert('执行失败')
// --></mce:script>");
}
finally
{
conn.Close();
}
} 0 0 0
(请您对文章做出评价)
相关文档:
asp.net窗体的打开和关闭
//打开新的窗体
Response.Redirect("WebMain.aspx");
//弹出一个新窗体
Response.Write("<script>window.open(\"WebMain.aspx\")</script>")
//弹出一个只有确定按钮的提示框
Response.Write("<script>alert(\"用户名或密码错误\");</script>") ......
protected void Button6_Click(object sender, EventArgs e)
{
this.Label11.Text = HtmlEncode(this.TextBox3.Text);
}
protected static string HtmlEn ......
在相同字符串的许多操作上,使用StringBuilder类会比使用String对象更有效率。
当你对一个string对象赋值时,这时会生成一个这个对象的副本,如果你赋值多次的话在系统中就会保存多个这个对象的副本,会对系统资源造成很大的浪费,但是StringBuilder不会出先上述情况
String数据类型代表的 ......
web.config
<httpHandlers>
<remove verb="*" path="*.asmx"/>
<add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
<add verb=" ......
#region 域名绑定方法
public static void AddHostHeader(int siteid, string ip, int port, string domain)//增加主机头(站点编号.ip.端口.域名)
{
DirectoryEntry site = new DirectoryEntry("IIS://localhost/W3SVC/" + siteid) ......