(1) 使用System.Timers 在使用过程中 发现定时不准确 有误差
protected void Application_Start() { //依据服务器触发不同是事件 AreaRegistration.RegisterAllAreas(); FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters); RouteConfig.RegisterRoutes(RouteTable.Routes); BundleConfig.RegisterBundles(BundleTable.Bundles); System.Timers.Timer minute_timer = new System.Timers.Timer(); minute_timer.Elapsed += new System.Timers.ElapsedEventHandler(minute_timer_process); minute_timer.Interval = 1 * 5 * 1000;//5 分钟 minute_timer.AutoReset = true; minute_timer.Enabled = true; minute_timer.Start(); }
(2)使用服务器控件Time 在长时间的运行下时间还是比较准确
需要在包含在From中 <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager> <asp:Timer ID="Timer1" runat="server" OnTick="{定时调用的方法名}"></asp:Timer> <asp:UpdatePanel runat="server"> <ContentTemplate> {需要定时控件} </ContentTemplate> </asp:UpdatePanel>
后端代码 Timer1.Interval = 10 * 60 * 1000;//time interval Timer1.Enabled = true;