阿里妈妈,帮你实现网络赚钱梦,流量变成现金!
最近做的C#项目里,有个地方要用事务控制。在某个方法中用了两个事务,想要实现当第二个事务回滚的时候,第一个事务也回滚。试了下把两个事务嵌套起来用,结果出错了。于是去网上找了下,说是要用COM+可以实现事务控制。记录一下代码备忘
因为使用到了ContextUtil,需要引入System.EnterpriseServices命名空间。
复制内容到剪贴板
程序代码
程序代码//表明需要事务支持
[Transaction(TransactionOption.Required)]
//声明为服务器应用程序,还可以选择Library,表示为库应用程序
[assembly: ApplicationActivation(ActivationOption.Server)]
[Transaction(TransactionOption.Required)]
//声明为服务器应用程序,还可以选择Library,表示为库应用程序
[assembly: ApplicationActivation(ActivationOption.Server)]
主要代码:
复制内容到剪贴板
程序代码
程序代码try
{
//执行一条正确语句
try
{
//执行一个错误的SQL语句
}
catch (Exception e)
{
throw new Exception();
}
// 事务完成
ContextUtil.SetComplete();
}
catch (Exception e)
{
//事务回滚
ContextUtil.SetAbort();
}
{
//执行一条正确语句
try
{
//执行一个错误的SQL语句
}
catch (Exception e)
{
throw new Exception();
}
// 事务完成
ContextUtil.SetComplete();
}
catch (Exception e)
{
//事务回滚
ContextUtil.SetAbort();
}
发表评论
上一篇:
下一篇: 
文章来自:
文章标签:
网摘收录: