다른 테이블의 일부 항목에 대해 히트 통계가있는 테이블이 있습니다.LinqToSql, 트랜잭션을 사용하여 새로 저장하거나 업데이트 하시겠습니까?
이 표는 나를 기록 홍보를주는이
ID (Primary key)
ItemId (Foreign key)
Date
Hits
과 같이 정의된다. 항목 pr 하루.
데이터베이스는 다중 스레드 환경에서 사용되므로 두 명의 사용자가 동시에 첫 번째 히트를 수행하여 두 개의 레코드를 생성 할 수 있습니다. 여기서 두 개는 히트 = 2로 1 개만 만들 수 있습니다. (유일한 색인 때문에 나는 예외를 대신 얻을 것입니다)
나는 어떻게 하나의 기록이 있는지 만 확인합니다. item pr. 일?
저는 SQL Server 나 .NET 동기화 개체의 전문가가 아니지만 "잠금 장치"는 .Net 응용 프로그램 프로세스에서 내부적으로 작동하는 Mutex와 같은 것을 의미합니까? – Karsten
Mutex가 작동하고 위에서 설명한 것처럼 lock 키워드를 사용하여 잠금 블록과 함께 한 사용자에게 코드를 제한하는 잠금을 설정할 수 있습니다. –