本文整理汇总了C#中UserManager.SetLockoutEnabledAsync方法的典型用法代码示例。如果您正苦于以下问题:C# UserManager.SetLockoutEnabledAsync方法的具体用法?C# UserManager.SetLockoutEnabledAsync怎么用?C# UserManager.SetLockoutEnabledAsync使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UserManager
的用法示例。
在下文中一共展示了UserManager.SetLockoutEnabledAsync方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: LockoutEnabled
public void LockoutEnabled()
{
using (UserStore<IdentityUser> store = new UserStore<IdentityUser>())
{
using (UserManager<IdentityUser> manager = new UserManager<IdentityUser>(store))
{
manager.UserTokenProvider = new EmailTokenProvider<IdentityUser>();
var user = User;
var taskLockoutSet = manager.SetLockoutEnabledAsync(user.Id, true);
taskLockoutSet.Wait();
Assert.IsTrue(taskLockoutSet.Result.Succeeded, string.Concat(taskLockoutSet.Result.Errors));
DateTimeOffset offSet = new DateTimeOffset(DateTime.UtcNow.AddMinutes(3));
var taskDateSet = manager.SetLockoutEndDateAsync(user.Id, offSet);
taskDateSet.Wait();
Assert.IsTrue(taskDateSet.Result.Succeeded, string.Concat(taskDateSet.Result.Errors));
var taskEnabledGet = manager.GetLockoutEnabledAsync(user.Id);
taskEnabledGet.Wait();
Assert.IsTrue(taskEnabledGet.Result, "Lockout not true");
var taskDateGet = manager.GetLockoutEndDateAsync(user.Id);
taskDateGet.Wait();
Assert.AreEqual(offSet,taskDateGet.Result, "Lockout date incorrect");
DateTime tmpDate = DateTime.UtcNow.AddDays(1);
user.LockoutEndDateUtc = tmpDate;
var taskGet = store.GetLockoutEndDateAsync(user);
taskGet.Wait();
Assert.AreEqual<DateTimeOffset>(new DateTimeOffset(tmpDate), taskGet.Result, "LockoutEndDate not set");
user.LockoutEndDateUtc = null;
var taskGet2 = store.GetLockoutEndDateAsync(user);
taskGet2.Wait();
Assert.AreEqual<DateTimeOffset>(new DateTimeOffset(), taskGet2.Result, "LockoutEndDate not set");
var minOffSet = DateTimeOffset.MinValue;
var taskSet2 = store.SetLockoutEndDateAsync(user, minOffSet);
taskSet2.Wait();
Assert.IsNull(user.LockoutEndDateUtc, "LockoutEndDate not null");
try
{
store.GetLockoutEnabledAsync(null);
}
catch (ArgumentException) { }
try
{
store.GetLockoutEndDateAsync(null);
}
catch (ArgumentException) { }
try
{
store.SetLockoutEndDateAsync(null, offSet);
}
catch (ArgumentException) { }
try
{
store.SetLockoutEnabledAsync(null, false);
}
catch (ArgumentException) { }
}
}
}
示例2: BanUser
public async Task<JsonResult> BanUser(ManageUserViewModel model)
{
var context = new PhotoContestDbContext();
var store = new UserStore<User>(context);
var manager = new UserManager<User>(store);
await manager.SetLockoutEnabledAsync(model.Id, true);
await manager.SetLockoutEndDateAsync(model.Id, DateTime.Now.AddDays(14));
return this.Json(
string.Format("Successfully locked user {0}", model.UserName),
JsonRequestBehavior.AllowGet);
}