我想在我的应用程序中显示当前日期和时间,我想使用服务器的时间来阻止用户在自己的机器中更改系统时钟。我当前的设置是一个定时器,每秒查询服务器上的时间。我没有实现这个,我担心性能,因为将有大约50个客户端。如果每秒有50个客户端查询服务器时间,那么性能问题有多大?在SQL Server上?在oracle数据库上?
If timecon.State = ConnectionState.Closed Then timecon.Open()
timecmd = New SqlCommand("Select CONVERT(varchar(20), GETDATE(), 101) + ' ' + CONVERT(varchar(8), GETDATE(), 114)", timecon)
lblServerTime.Text = timecmd.ExecuteScalar
我以为我可以在表单加载时查询服务器时间然后每秒递增一次。让计时器增加秒,分钟,小时,日,月,年。我怎么能这样做?
或者,如果可能,如何在表单加载时将计算机日期时间与服务器日期时间同步?比如查询服务器日期时间并使用它来更改客户端机器的日期时间。
答案 0 :(得分:0)
你的想法很好,如果你在加载中查询时间然后将计时器设置为1000或1秒,你需要做的就是设置在命中60后重置并在下一次加1的变量。例如:第二个计数器点击60,重置,添加一分钟等...第一次你应该在几分钟后检查服务器,以确保它不落后于任何。