The problem is your understanding of web applications...
Such an application runs separated, means that there is a server and a client part of it...
What actually happening is that your page starts and creates the timer (on the server), than gets into the final phase of the page rendering, after which it dies!(unloads) and with it the timer too...
This is the point that you have to think about your solution, and to think about why at the first place you try to do such a thing!!!
I'm saying you this because such repeating action does not fit good into a web application...It may be better to create some sort of service...
After you have thinking about it...
There is an other timer class inside System.Web.UI namespace that came to solve your problem...It has a server ad a client side that wotk together to keep the timer alive even after the page on the server gone (using JavaScript)...
https://msdn.microsoft.com/en-us/library/system.web.ui.timer%28v=vs.110%29.aspx[
^]