내가 ASP.NET 사이트에서 일괄 처리 문제를 접근 알고있는 몇 가지 방법을있다.
ASP.NET 사이트의 응용 프로그램 풀을 재활용 할 수있는 방식으로 인해 일반적으로 일괄 처리는 외부 프로세스에서 수행됩니다.
Windows 서비스
방법 중 하나는 새로운 엑셀을 얻고에서 데이터 펌프, 주위가는 계속 타이머를 가지고 별도의 Windows 서비스입니다. 나는 이것을 자주 사용하는 것을 보았고, 쉽게 전개 할 수 있도록 추가 작업이 필요하기 때문에 상당히 고통 스럽습니다. Update ASP.Net membership from windows service
CacheItem
두 번째 방법은 일괄 처리를 할 CacheItems과 만료 타이머를 사용하는 것입니다, 당신은 당신이 긴 타이머 캐시 객체를 정의하고, 무엇을 그 만료되고 Removed- 때 콜백이 호출되면 데이터베이스 작업을 수행합니다. 이것은 ASP.NET 사이트에 배포되고 코드를 하나의 논리적 인 위치에 가지고 있기 때문에 좋습니다. http://blog.stackoverflow.com/2008/07/easy-background-tasks-in-aspnet/
워크 플로 파운데이션
세 번째 방법은 워크 플로 기반 서비스를 만드는 것입니다. 이 서비스는 ASP.NET 사이트에서 호출을받습니다.이 호출은 Excel 파일로 일부 db 작업을 수행하는 WF 서비스를 인스턴스화 한 다음 한 달 안에 지연되는 while 루프로 이동합니다. 이것은 ASP.NET 응용 프로그램 풀의 수명과 관련이 없기 때문에 좋습니다. 더 많은 제어가 가능하며이 논리를 다른 IIS 호스팅 WCF 서비스로 분리 할 수 있습니다. 데이터와 통합 http://msdn.microsoft.com/en-us/library/dd489452.aspx
그래도 항상 고통, 당신에게 최소한의 작업과 배포 실패의 최소한 기회를 제공 솔루션이 최선의 해결책이 기억하십시오.
아마 나는 powershell 스크립트 나 작은 콘솔 응용 프로그램을 만들어 해당 구문을 분석하고 db로 펌핑 한 다음 제거하면됩니다.당신의 콘솔 응용 프로그램에서 EF 데이터베이스를 먼저 데이터베이스에 추가 한 다음, 초를 정렬하면 해당 항목을 얻을 수 있습니다. 또한 Excel 파일의 가져 오기 기능이있는 대부분의 데이터베이스를 확인하여 직접 수행 할 수도 있습니다. http://www.dreamincode.net/forums/topic/72989-how-to-transfer-data-from-excel-to-db-tables/ –
주석 주셔서 감사합니다. 나는 aspnet_regsql.exe를 사용하여 서버에서 db를 생성하십시오. 나는 csv를 읽고 뭔가 레지스터 메소드를 호출 할 수 있다고 생각한다. 이 유형의 일에 대해 "모범 사례"또는 잘 확립 된 방법이 있는지 궁금합니다. – Dubh
질문 : 한 번만해야 할 작업을 어떻게 자동화하고 싶습니까? 아니면 시트 데이터가 항상 반복적으로 배포되어야하는 상황을 능가합니까? –