2013-04-20 4 views
0

다른 방법을 사용해야한다고 가정하고 transaction scope에 넣습니다. 그러나 모든 방법은 연결을 엽니 다. 그래서 windows 서버에서 MSDTC service을 활성화해야합니다. 하지만 공유 호스팅 서버이며 사용할 수 없습니다.공유 호스팅 서버에서 transacion 범위를 사용해야합니까?

class Debit 
{ 
    public void InsertA() 
    { 
    //InsertCode 
    } 
} 
class Credit 
{ 
    public void InsertB() 
    { 
    // InsertCode 
    } 
} 
using (TransactionScope ts = new TransactionScope(TransactionScopeOption.Required)) 

     { 
      DebitBAL debit = new DebitBAL(); 
      CreditBAL credit = new CreditBAL(); 
      debit.InsertA(); 
      credit.InsertB(); 
      ts.complete(); 
} 

나는 내 진술에 entity framework을 사용합니다. 공유 호스팅 서버에서 transaction scope을 사용하는 것이 좋습니다.

+0

관련 : http://social.technet.microsoft.com/wiki/contents/articles/handling-transactions-in-sql-azure.aspx 분산 트랜잭션을 필요로하지 않도록 코드를 변경해야합니다. 이는 'TransactionScope'을 사용하여 상호 배타적이지 않습니다. –

답변

0

,이 링크에서 transaction scopes with entity framework

을 사용하는 방법은이 링크를 참조 트랜잭션 범위는 오류가 여러 개체의 업데이트 중에 발생하면 롤백을 표시하는 데 사용되고있는 세 가지 경우에 대해 설명했다

1 : 컨텍스트에 대한 저장 호출이 여러 개있을 때;

2 : 여러 개체로 단일 저장하는 경우;

3 : 여러 컨텍스트를 통한 트랜잭션.

관련 문제