强类型的DataSet更新主从表的事物应该怎么写呢?

schinar 2012-02-10 10:49:56
this.dataTable1TableAdapter.Adapter.Update(this.DataSet1.DataTable1);
this.dataTable2TableAdapter.Adapter.Update(this.DataSet1.DataTable2);
其中DataTable1是主表,DataTable2是从表.
...全文
118 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
koukoujiayi 2012-02-11
  • 打赏
  • 举报
回复
强类型的事务比较麻烦,
要创建某个适配器类的partial class,
将要执行事务的n个方法写在这个适配器类下!
schinar 2012-02-11
  • 打赏
  • 举报
回复
            using (TransactionScope UpdateTrans = new TransactionScope())
{
try
{
this.dataTable1TableAdapter.Adapter.Update(this.DataSet1.DataTable1);
this.dataTable2TableAdapter.Adapter.Update(this.DataSet1.DataTable2);
UpdateTrans.Complete();
}
catch
{
MessageBox.Show("数据更新错误");
}
}
schinar 2012-02-11
  • 打赏
  • 举报
回复
我试试.
蒋晟 2012-02-11
  • 打赏
  • 举报
回复
创建一个TransactionScope对象啊
koukoujiayi 2012-02-11
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 schinar 的回复:]
我试过,确实能回滚.
[/Quote]
是吗!我也试试!如果行这很简单,受教了!!
schinar 2012-02-11
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 koukoujiayi 的回复:]
3楼这样的写法估计不行!
执行事务,执行回滚在哪里?
[/Quote]
隐式事务,无需与事务自身进行交互,当应用程序完成它要在一个事务中执行的所有工作以后,只调用一次 Complete 方法,来通知事务管理器它可以提交事务,未能调用此方法时将中止事务.
schinar 2012-02-11
  • 打赏
  • 举报
回复
我试过,确实能回滚.
koukoujiayi 2012-02-11
  • 打赏
  • 举报
回复
3楼这样的写法估计不行!
执行事务,执行回滚在哪里?
koukoujiayi 2012-02-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 schinar 的回复:]
引用 4 楼 koukoujiayi 的回复:
强类型的事务比较麻烦,
要创建某个适配器类的partial class,
将要执行事务的n个方法写在这个适配器类下!

用贴在3楼的TransactionScope对象实例不行吗?
[/Quote]
你试下来行吗?
对执行第二个给个错误,看看第一个是不是回滚了?
3楼的方法我没用过!
schinar 2012-02-11
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 koukoujiayi 的回复:]
强类型的事务比较麻烦,
要创建某个适配器类的partial class,
将要执行事务的n个方法写在这个适配器类下!
[/Quote]

用贴在3楼的TransactionScope对象实例不行吗?

111,125

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧