명령 시간 초과가 설정된 위치는 이전 버전과 더 이상 동일하지 않습니다.aspnetcore/entityframeworkcore에서 명령 시간 초과를 설정하는 방법
그러나 나는 이것을 바꿀 수있는 방법을 말하는 곳을 찾을 수 없습니다.
내가하고있는 일은 기본 30 초보다 오래 걸리는 매우 큰 파일을 업로드하는 것입니다.
명령 시간 초과가 설정된 위치는 이전 버전과 더 이상 동일하지 않습니다.aspnetcore/entityframeworkcore에서 명령 시간 초과를 설정하는 방법
그러나 나는 이것을 바꿀 수있는 방법을 말하는 곳을 찾을 수 없습니다.
내가하고있는 일은 기본 30 초보다 오래 걸리는 매우 큰 파일을 업로드하는 것입니다.
당신이 당신의 상황에 맞는 더 나은 옵션이
공용 클래스 DbConnect 같은 설정을 통해 UR 상황시 CommandTimeout이 사용하는 것입니다
public class ApplicationDbContext : DbContext
{
public ApplicationDbContext()
{
Database.SetCommandTimeout(150000);
}
}
를 통해 변경할 수 있습니다 IConnnectDb {
개인 dbentitient의 _context;
생성자의 데이터베이스에 thie를 주입하십시오.
// 실제로 각 쿼리는 db에 대한 쿼리를 실행하기 전에 다음 메소드를 사용합니다.
_context.Database.SetCommandTimeout (400);
}
참고 : Efcore는 100 개 미만의 초 시간에 쿼리를 실행합니다. 재 시도가 계속되면서 결과를 볼 수 없게된다면
지금 내 경험으로 말하지만, 고칠 수 있다면 알려주세요 Efcore 1은 ef core 2.0보다 훨씬 더 빠릅니다./
DI 컨테이너를 사용하여 DbContext를 관리하는 경우 (즉, DbContext를 서비스 컬렉션에 추가하는 경우) 옵션에 명령 시간 제한을 지정할 수 있습니다. Startup.ConfigureServices에서
:
services.AddDbContext<YourDbContext>(options =>
options.UseSqlServer(this.Configuration.GetConnectionString("YourConnectionString"), sqlServerOptions => sqlServerOptions.CommandTimeout(60))
);
이 한 번 봐 [엔티티 프레임 워크 핵심 마이그레이션 시간 제한을 설정하는 방법?] (http://stackoverflow.com/questions/39006847/how-to-set-entity -framework-core-migration-timeout) -'Database.SetCommandTimeout'에 대한 응답 –