今天做了一个小的登录程序,要求是用户连续登录错误3次之后锁定该用户,过了一定的时间才能再次登录。于是乎在探讨的时候出现了以下的代码:
private void UpdateErrortime()
{
SqlConnection conn = new SqlConnection(strcon);
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn;
conn.Open();
cmd.CommandText = "update T_User set ErrorTime=@errortime where UserName=@username";
cmd.Parameters.AddWithValue("errortime",DateTime.Now);
cmd.Parameters.AddWithValue("@username",txtUserName.Text);
cmd.ExecuteNonQuery();
}
DateTime errortime = GetErrorTime();
//Subtract函数减去指定时间,返回一个时间差,这个返回值可以转换成我们需要的形式,比如可以转换层总共多少秒,或者总共是多少分。。。
TimeSpan span = DateTime.Now.Subtract(errortime);
double theseconds = span.TotalSeconds;
if (theseconds < 15)
{
MessageBox.Show("您已经