2014-04-18 3 views
-3

asp.net MVC4의 새로운 기능입니다. 나는 온라인 쇼핑몰을 짓고있다. 파일에 업로드 할 수천 개의 레코드가 포함 된 파일을 업로드 할 수있는 옵션을 사용자에게 제공하면 내 응용 프로그램이 데이터베이스 시스템에 파일을 저장합니다. 그것은 긴 작업입니다. 그래서 저는 백그라운드에서이 작업을하고 싶습니다. 사용자가 대량의 레코드가 포함 된 파일을 업로드 할 때 사용자는 다른 작업을 수행 할 수 있어야합니다. 레코드를 추가하는 작업은 백그라운드에서 수행해야합니다. 어떻게 진행해야하는지 알려주세요. 어떤 도움 자료, 튜토리얼? 또한 Entity 프레임 워크를 사용하고 있지 않습니다. 간단한 연결 지향 모델을 사용하고 있습니다. stackoverflow에 많은 게시물을 본 적이 있지만 내 작업에 대한 해결책을 찾을 수 없습니다 감사합니다asp.net MVC4에서 백그라운드 작업 수행

답변

0

컨트롤러에서 이와 같은 작업을 수행 할 수 있지만 AFAIK 스레드가 응용 프로그램 풀 재활용에 의해 중단되지 않을 것이라고 보장하지 않습니다.

Task.Factory.StartNew(() => 
    { 
     //do something here with your Request.Files[0].InputStream; 
    }, 
    CancellationToken.None, 
    TaskCreationOptions.LongRunning, // guarantees separate thread 
    TaskScheduler.Default); 

UPD :

신뢰할 수있는 방법은 파일을 저장, 그리고 백그라운드에서 Windows 서비스 과정을 것이다.

관련 문제