It’s been a while since I’ve posted anything here (work and outside projects has kept me from doing so) but I thought I’d post some of my observations on a current project I have been working on. I recently created a new ASP.NET application for a department at work, the application has been deployed and is now being used. One of the requirements is to have reports generated at specific times (i.e. once a week, once a day at 12:00 p.m., etc.). I’ve been thinking about the best way to approach this and have two options available at my disposal:
- Windows Scheduled Job – In the past, I’ve created a .NET console application and then used a Windows Scheduled Job to execute this to generate the report required by the users. This has the advantage of being pretty straight forward approach. I’ve recently started to read up on a simple library that will allow me to parse out parameters for different types of reports (the library I am referring to is NDesk.Options).
- Quartz.Net – This is a job scheduler library written in .NET which can be embedded into a stand along .NET application or used as a Windows Service. Reading up on the documentation this looks to be like a very flexible library that will allow me to schedule the appropriate jobs required for the project I am working on.
Although the Quartz library looks awesome, time constraints and lack of familiarization with the library has caused me to use the Windows Scheduled Job/Console App option. What’s important for me is to make sure that I build something that will not only be delivered on time, but also something I am comfortable with. I would hate to start using my current project as a playing ground and mess something up that will give the users a perception of a ‘buggy’ application! I will continue to read up on the Quartz documentation and hope to eventually use this library in this (or future) projects.