我正在做这样的事情来获取所有已被阻止的用户的列表:
public IQueryable<Aspnet_User> GetBannedUsers()
{
return db.Aspnet_Memberships.Where(x => x.IsApproved == false).Select(x => x.Aspnet_User);
}
我这样做是为了阻止用户:
MembershipUser user = Membership.GetUser(username);
if (user != null)
{
user.IsApproved = isApproved;
Membership.UpdateUser(user);
}
如何获取按被禁日期排序的被禁用户列表。 最近被禁止的应该排在第一位。
最佳答案
默认情况下,asp.net 成员资格不存储此日期,因此您必须使用变通方法。一种简洁的方法是引入您自己的表,但我建议滥用 LastLoginDate。只要用户未正确登录(您的 !isApproved 将防止发生这种情况),默认机制就不会触及此日期。
修改代码以阻止用户:
MembershipUser user = Membership.GetUser(username);
if (user != null)
{
user.IsApproved = isApproved;
user.LastLoginDate = DateTime.Now;
Membership.UpdateUser(user);
}
根据禁止日期排序的代码,复制粘贴自@Femaref 的回答:
public IQueryable<Aspnet_User> GetBannedUsers()
{
return db.Aspnet_Memberships
.Where(x => x.IsApproved == false)
.OrderByDescening(x => x.LastLoginDate)
.Select(x => x.Aspnet_User);
}
关于c# - 按日期降序获取被禁用户列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5133313/