2010-06-24 1 views
3

IHttpModule으로 표준 ISession을 사용하여 트랜잭션을 여는 트랜잭션 당 뷰 모델을 고려하십시오.ISession과 IStatelessSession을 나란히 둘 수 있습니까?

이제 배치 작업을 수행하려는 페이지가 있습니다. IStatelessSession 때문에 일괄 작업에 대한 선호 :

  1. 은 내가 가질 수 모두 ISession과 동시에 열 IStatelessSession? 안전 해요?
  2. 1. 그렇다면 동일한 ITransaction을 사용할 수 있습니까?
  3. 2. 만약 no이면 i 커밋해야합니다. & ISession 및 그 관련 ITransaction을 닫은 다음 IStatelessSessionITransaction을 엽니 다.
  4. 3. 그렇다면 알고 있어야하는 함정이 있습니까?

아이디어는 예

답변

2
  1. 환영 그래.
  2. 아니요, 각각 고유 한 트랜잭션이 있습니다.
  3. 나는 세션의 트랜잭션을 커밋하지만 세션을 열어 둡니다.

모든 HTTP 요청에 대해 트랜잭션을 시작하지 않는 것이 좋습니다. 대신 커밋 변경 사항이있을 때 페이지에서 트랜잭션을 시작하고 커밋하십시오. 또한 요청이 끝날 때 대신 페이지에서 예외를 catch 할 수 있으므로 예외 처리가 향상됩니다.