2013-06-26 4 views
2

여러 RESTful 요청을 통해 원자 트랜잭션을 달성하기 위해 ASP.NET 응용 프로그램의 세션에 TransactionScope를 저장하는 것이 적절한 방법인지 궁금합니다.세션에서 트랜잭션 스코프 저장

REST and Batch

그러나이 방법은 일괄 처리 내에서 작업이 상관 관계가없는 것으로 제한 : 나는 그런이 하나 배치에 관한 몇 가지 관련 기사를 확인했습니다. 내가 달성하고자하는 것은 무엇인가 같다 :

이/반환 계정 ID와 사용자를 업데이트 할 계정을 생성하고 계정 ID를 PUT/사용자/1을 반환 계정 POST

그것은 쉽게 달성 할 수

2 개의 RESTful 요청. 그러나 데이터의 무결성을 보장하고자합니다. 따라서 작업은 원자 적이어야합니다.

제가 생각할 수있는 것은 Session을 사용하여 TransactionScope 객체를 저장하는 것입니다. 평소와 같이 두 개의 RESTful 요청을 만들고 세 번째 요청에서 트랜잭션을 커밋하고 TransactionScope 개체와 세션을 삭제합니다.

적절한 방법 일 수 있습니까? 나는 무엇이든지 놓쳤는가? (자물쇠 일까?)

고마워!

제임스

답변

0

그것은 특히 나쁜 생각처럼 들립니다. 안정된 서비스는 무국적자입니다.

거래가 필요한 경우에는 WCF ...

+0

예. 어느 정도 당신에게 동의합니다. 그러나 상호 운용성 측면에서 볼 때 WCF는 좋은 아이디어가 아닙니다. TransactionScope을 세션 (또는 캐시)에 넣고 만료일을 설정하면 얼마나 나쁠까요? –

관련 문제