2012-09-11 3 views
0

나는 clockIn을 가지고있다. & Asp.NET 응용 프로그램에서 노동자에 대한 시작 시간이 & 종료 시간을 기록하는 clockOut 모듈.크론 작업 asp.net

작업자가 해당 날짜 또는 주에 시간을 입력하지 않았는지 확인하고 작업 시작 시간 및 종료 시간을 입력하라는 전자 메일 알림을 보내려면 asp.net 응용 프로그램의 cron 작업을 수행하는 방법을 묻고 싶습니다.

+0

'cron'을 의미합니까? – Nick

+0

도움을주기 위해 일련의 수정 작업을했지만 잘못된 것을 되돌릴 수는 있습니다. – Beska

+8

"옥수수 작업"이 무엇인지 알아 내려고했습니다 ... – LittleBobbyTables

답변

15

ASP.NET이 잘못된 작업 도구입니다. 예약 된 작업에서 실행되는 Console Application이나 정기적 인 간격으로 폴링하는 Windows Service을 작성하는 것이 좋습니다. ASP.NET은 요청/응답 모델을위한 것입니다.

어느 쪽이든 웹 사이트에서 읽고 쓰는 데이터 저장소는 ASP.NET 사이트만큼 쉽게 액세스 할 수 있습니다.

둘 다 수행하지 않은 경우 콘솔 응용 프로그램이 작성하고 구현하는 것이 가장 간단합니다. Windows 서비스가 그다지 좋지는 않지만 디버깅 난이도를 포함하여 추가 오버 헤드가 있으며 콘솔 응용 프로그램에서 가능한 XCOPY 배포 모델과 비교하여 special installation process을 통과해야합니다. 당신이 가 정말는 ASP.NET에서 그것을하고 싶은 경우

,이를 않는 asp.net 웹 페이지를 작성하고 실행하기 위해 Windows에게 예약 된 작업을 사용할 수 있습니다. 예약 된 작업은 실행 파일을 실행할 수있는 것처럼 쉽게 Internet Explorer를 특정 페이지로 열 수 있습니다. 하지만 추천하지 않습니다.. 작업이 끝나면 IE 창을 닫아야합니다. 실제로는 "해킹 된"해결책 일뿐입니다. 나는 순수한 웹 개발자 였고 더 나은 것을 알지 못했지만 그 이후로는하지 않았다.

+0

우리는 과거와 마찬가지로 모든 일을 해왔으며 우리는 여전히 그들을 잊고 있습니다. 예전에는 마우스 로거를 사용하여 프로세스를 자동화했지만 실수로 인해 많은 사람들이 다른 해상도를 선호했기 때문에 사용자가 데스크톱의 해상도를 변경하는 경우가 대부분이었습니다. 물론 당신은 그 다른 방법들을 고칠 수 있었지만 진짜 문제는 나의 해결책이었습니다. ;) –

+0

확인. 콘솔 앱 또는 Windows 서비스를 만들면 어떻게됩니까? 이 부가 기능을 데이터 센터 –

+1

에 게시 할 수 있습니까? 누가 호스팅하고 있으며 얼마만큼의 액세스 권한이 있는지에 따라 다릅니다. 이 설정을 할 수있는 능력이 없으며 호스트 관리자가 대신 해드릴 수 없다면 @Chris Farmer의 대답이 최선의 선택입니다. 또는 웹 응용 프로그램에 ASP.NET 웹 서비스를 추가하고 제어하는 ​​시스템에서 THAT를 호출 할 수 있습니다. 이 유형의 일을 할 수있는 권한이 없다는 사실은 대답을 완전히 바꾸는 중요한 세부 사항입니다. – David

0

기술적으로 크론 작업이 아니더라도 웹 사이트에서 X 시간대에 설정된 페이지를 호출 할 수 있습니다.

응용 프로그램 시작에서 타이머에 대해 호출되는 웹 메서드 호출을 통해이 작업을 몇 번했습니다.

기본 설명은 여기에 있습니다 : Call a webpage from c# in code

6

제프 앳 우드는 ASP.NET에서 백그라운드 작업을 할 수있는 간단한 방법에 대해이 사이트의 초기에, Easy Background Tasks in ASP.NET으로 제목, 스택 오버플로 블로그에 게시. 당신의 업무가 상대적으로 가벼운 경우, 이것은 나쁜 방법이 아닐 수도 있습니다. 기존 ASP.NET 응용 프로그램 내부에 모든 것을 유지하려는 이유가 있다면이 방법이 좋습니다.

요지 : 시작시

  1. 가 고정 만료로 HttpRuntime.Cache에 항목을 추가한다.
  2. 캐시 항목이 만료되면 WebRequest와 같은 작업을 수행하십시오.
  3. 항목을 캐시에 다시 만료 시켜서 만료시킵니다.
+0

+1 - 아직도 추천하지 않습니다. 나는 여전히 그것이 작업을위한 잘못된 도구라고 생각하지만 작동 할 것이고, 일을 끝내는 빠르고 더러운 방법입니다. – David

+0

+1 독창성. –