首页 新闻 搜索 专区 学院

一个WCF的问题

0
悬赏园豆:5 [已关闭问题] 关闭于 2009-12-16 15:03

 1   一个项目中有几个WCF服务, 一个方法里同时渗杂着几个WCF服务的方法.

我想实现这样的效果: 在方法A里面有B服务的方法, 也有C服务的方法.

举个例子

B服务的方法:  public void B ()  {  操作数据库  }   

C服务的方法:public void C() { 操作数据库 }

A方法调用B服务和C服务

public void A()
{
 using (System.Transactions.TransactionScope ts = new System.Transactions.TransactionScope())
{

try
{
   //  调用B服务的方法
   //  调用C服务的方法
}
 // 回滚
  catch(Exception ex)
                {
           System.Transactions.Transaction.Current.Rollback();
                }
// 成功时提交
 ts.Complete();
}
}

B服务和C服务全部采用WsHttpBinding ,
我在B服务和C服务上尝试了  TransactionFlowOption.Allowed  , TransactionScopeRequired = true 或 TransactionFlowOption.Mandatory, TransactionScopeRequired = true

但都没有做到事务的回滚,  除非在B服务和C服务上面加上 using (System.Transactions.TransactionScope ts = new System.Transactions.TransactionScope())
才可以做到事务回滚。   请问一下,我可不可以不加上面这行呢。 

2  WCF有没有像WEB服务那样可以设置服务的Url ?

不若相忘于江湖的主页 不若相忘于江湖 | 初学一级 | 园豆:51
提问于:2009-12-14 15:37
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册