当点击Submit按钮触发事件后,会将一些数据插入数据库中,如何通过点击Cancel按钮取消事件并且回到触发事件之前的状态呢????
解决方案 »
- 如果抛弃服务器控件,那么html控件如何执行服务器端事件?
- 【叶子....】请教大家个问题 帮顶有分
- 如何获得Gridview或DetailsView里某个值?
- NHibernate 支持分布式事务吗?
- 如何向表变量中 一次性插入记录
- ArrayList数组如何转变成long[]类型
- ASP.NET Web Matrix出现乱字符
- 主页面和web用户控件的page_load问题
- DataGrid插入新行怎么实现?
- 同样的脚本,放在*.htm中没问题,放在*.aspx中就是乱码???急,在线等!
- MVC为什么使用JS提交表单,在contorller中得到的Request.Form的Count始终为0?
- winform定时发送邮件
既然提交的数据量大到有可能会让客户等不及,
何不把数据分批次提交呢?顺便再告诉你,
WEBFORM是不状态的,
一旦提交就不能撤销.那些所谓能做到撤销的,
都不是真正的撤销,
而是分解步骤,
在提交前都可以放弃,
直到最后一步才真正提交.
//执行事务处理
public void DoTran()
{ //建立连接并打开
SqlConnection myConn=GetConn();
myConn.Open();
SqlCommand myComm=new SqlCommand();
//SqlTransaction myTran=new SqlTransaction();
//注意,SqlTransaction类无公开的构造函数
SqlTransaction myTran;
//创建一个事务
myTran=myConn.BeginTransaction();
try
{
//从此开始,基于该连接的数据操作都被认为是事务的一部分
//下面绑定连接和事务对象
myComm.Connection=myConn;
myComm.Transaction=myTran; //定位到pubs数据库
myComm.CommandText="USE pubs";
myComm.ExecuteNonQuery();//操作1
myComm.CommandText=""; //操作2
myComm.ExecuteNonQuery();
//提交事务
myTran.Commit();
}
catch(Exception err)
{
myTran.rollback();
throw new ApplicationException("事务操作出错,系统信息:"+err.Message);
}
finally
{
myConn.Close();
}
}
但是Cancel按钮如何去中止,一直在执行Submit的内容过程中。