2011-09-12 8 views
1

우리는 ASP.NET 웹 응용 프로그램에서 트랜잭션을 구현할 것입니다. 그 3 개의 계층 구조. 비즈니스 계층에서 웹 서비스를 호출하고 TransactionOPtion 특성을 설정하여 웹 서비스에 트랜잭션을 구현할 계획입니다.비즈니스 계층에서 트랜잭션을 구현하는 것이 좋습니다.

데이터 계층으로 이동하면 데이터 계층에 트랜잭션을 구현하는 것이 좋으며 비즈니스 계층에서 호출해야합니다. 비즈니스 계층에서 트랜잭션을 시작한 경우 Datalyer 자체에서 트랜잭션을 시작할 수 있으므로 나에게 맞는 트랜잭션 개념을 Datalayer에 전달해야한다고 생각합니다. 나는 다른 데이터베이스와 이야기하지 않고 BusinessLayer에서 여러 메소드 호출을하지도 않습니다. 따라서 나는이 상황에서 비즈니스 계층에서 트랜잭션이 필요하다고 생각하지 않는다. 제 이해를 확인/수정 해주십시오.

감사

SONI

답변

2

당신이 비즈니스 계층에 하나의 호출에서 데이터 레이어를 여러 번 호출이있는 경우, 당신이 비즈니스 계층에 트랜잭션 범위를 상승 피할 수 있다고 생각하지 않습니다.

비즈니스 계층 호출 당 하나의 데이터 계층 호출로 제한하면 물론 비즈니스 계층 수준의 트랜잭션은 필요하지 않으며 데이터 계층에만 유지할 수 있습니다.

+0

비즈니스 통화 당 하나의 데이터 레이어 호출입니다. 데이터 영역에 트랜잭션을 보관하는 방법을 알아 보겠습니다. 감사 – hangar18

0

트랜잭션을 쉽게 추적 할 수 없습니다.
트랜잭션 열기 및 닫기에 대한 책임은 비즈니스 계층으로 이동합니다.
-> 레이어 간의 커플 링은 웹 서비스를 호출 할 때 기대하는 것보다 훨씬 더 많습니다.

관련 문제