我想在日期匹配时取消锁定。我在数据库上有DateTime.Now.AddMinutes(5))的LockoutEndDateUtc字段-值。因此,请告诉我编写此条件的正确语法。
if (DateTime.Now == user.LockoutEndDateUtc) { } ?
答案 0 :(得分:1)
几件事:
DateTime.Now
返回 local 时间。您应该改用DateTime.UtcNow
。
几乎不可能完全匹配当前时间,因为通常会跟踪这些值的最多7个小数位。相反,您应该使用>
,<
,>=
或<=
。
我假设您的问题中未提及某些内容,但是如果您打算将用户锁定5分钟,则可能是要使用以下命令设置数据库值:
user.LockoutEndDateUtc = DateTime.UtcNow.AddMinutes(5);
,也许您应该将其与:
if (DateTime.UtcNow >= user.LockoutEndDateUtc)