Entity Framework Core 오류: "이전 작업이 완료되기 전에 이 컨텍스트에서 두 번째 작업이 시작되었습니다."
에서 Entity Framework Core로 작업할 때 ASP.Net Core 2.0 프로젝트의 경우 "이전 작업이 완료되기 전에 이 컨텍스트에서 두 번째 작업이 시작되었습니다."라는 오류가 발생할 수 있습니다. 이 오류는 코드가 로컬에서는 문제 없이 실행되지만 스테이징 서버에 배포되면 실패하는 경우에도 발생할 수 있습니다.
가능한 원인:
해결책:
DbContext를 임시로 등록:
다음으로 인한 동시성 문제를 해결하려면 종속성 주입을 수행하려면 범위가 지정된 대신 임시로 DbContext를 등록하세요. 다음 코드를 사용하십시오.
services.AddTransient<MyContext>();
비동기 람다 표현식 방지:
비동기 작업을 사용하는 경우 비동기 람다 표현식을 사용하지 않도록 코드를 리팩터링하세요.
스레드 확보 안전성:
DbContext 구현의 제한 사항을 이해하고 작업을 순차적으로 실행하거나 적절한 동기화 메커니즘을 사용하여 스레드 안전성을 보장합니다.
기타 요소 고려:
위 내용은 내 Entity Framework 핵심 응용 프로그램에서 '이전 작업이 완료되기 전에 이 컨텍스트에서 시작된 두 번째 작업'이 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!