C# 让用户';ApplicationUser中的锁定状态是什么?
我想在Asp.NETMVC(Core或NetFramework)中的ApplicationUser(继承自IdentityUser)中保存用户的锁定状态,那么从设计角度来看,哪种实现更好 1.分别具有IsActive属性和LockoutReason枚举属性的用户 2.具有ActiveStatus枚举的用户C# 让用户';ApplicationUser中的锁定状态是什么?,c#,asp.net-mvc,asp.net-core-mvc,asp.net-identity,C#,Asp.net Mvc,Asp.net Core Mvc,Asp.net Identity,我想在Asp.NETMVC(Core或NetFramework)中的ApplicationUser(继承自IdentityUser)中保存用户的锁定状态,那么从设计角度来看,哪种实现更好 1.分别具有IsActive属性和LockoutReason枚举属性的用户 2.具有ActiveStatus枚举的用户 p、 s:这一设计将成为我们的身份提供者的用户管理的一部分,因此对我们来说,实现我们所能实现的最佳方式非常重要 class ApplicationUser: IdentityUser {
p、 s:这一设计将成为我们的身份提供者的用户管理的一部分,因此对我们来说,实现我们所能实现的最佳方式非常重要
class ApplicationUser: IdentityUser
{
// ...
public UserActiveStatus ActiveStatus {get; set; }
}
enum UserActiveStatus
{
Active,
LockedByAdmin,
MaximumWrongPasswordAttemptsReached,
...
}
由于
ActiveStatus
是用户需要的最终信息,因此需要在if-else语句中添加user.IsActive
分支,然后获取LockoutReason
,以防账户被锁定,这是不必要的确定的,但我如何保持用户的解锁状态,更新?I(AspNet Identity)在3次错误的密码尝试后锁定了用户(John Doe)。当他/她返回并再次登录3小时后,他/她就可以有效登录,我会将他的ActiveStatus更新为“Active”。但是当他在接下来的10小时内不会返回系统时,我如何在3小时后将他的ActiveStatus更新为“Active”?
class ApplicationUser: IdentityUser
{
// ...
public UserActiveStatus ActiveStatus {get; set; }
}
enum UserActiveStatus
{
Active,
LockedByAdmin,
MaximumWrongPasswordAttemptsReached,
...
}
class ApplicationUser: IdentityUser
{
// ...
public UserActiveStatus ActiveStatus {get; set; }
}
enum UserActiveStatus
{
Active,
LockedByAdmin,
MaximumWrongPasswordAttemptsReached,
...
}