I need to notify users registered in my web app every n days after the registration until they fill a certain form.
Now I’m wondering if I need to implement a separated windows service to install on my server, or should I integrate a mailing service directly in my web app.
More generally: Could the server side code of a web app act as a service in background? (even when the web app is not executed in any browser)
Take a look at Quartz.NET, it’s open source job scheduling system, that you also can use in your webapplication. It’s started from your application_start event in the global.asax and runs within same application pool as the website.
You can see an example at this blog post:
ASP.NET Scheduled Tasks with Quartz.NET