ASP.NET 응용 프로그램에서 여러 SQL 트랜잭션을 실행합니다. 하나의 트랜잭션은 여러 저장 프로 시저를 하나씩 실행합니다. 트랜잭션은 상당히 오래 실행되는 트랜잭션입니다.롤백 된 SqlTransaction 인스턴스에서 모든 명령을 다시 실행하는 방법은 무엇입니까?
응용 프로그램의 두 인스턴스, 즉 두 개의 서로 다른 프로세스가 하나의 데이터베이스에 연결될 때 SQL 데드락 문제가 발생합니다. 이 경우 SQL Server는 자동으로 하나의 프로세스에서 트랜잭션을 롤백합니다.
이 경우 롤백 된 SqlTransaction
에 모든 명령 (저장 프로 시저)을 실행하고 싶습니다.
어떻게 C#에서이 작업을 수행 할 수 있습니까?
트랜잭션이 SQL 서버에 의해 롤백되기 전에 실행 된 SQL 트랜잭션의 모든 명령을 쉽게 다시 실행할 수 있습니까?
또는 내가 수행 한 모든 저장 프로 시저를 "기억"(필요할 때마다 다시 실행)하는 자체 논리를 작성해야합니까?
사용자 코드를 다시 입력해야합니다. 따라서 "자신의 논리"에 대한 마지막 진술이 맞습니다. –