ASP.NET Scheduled Tasks engine based on cache item expiration event.