我有通過搜索電子郵件,並確保它不存在,創建一個用戶,並創建了一個用戶等級:更改ASP.NET身份密碼
public async Task EnsureSeedDataAsync()
{
if (await _userManager.FindByEmailAsync("[email protected]") == null)
{
// Add the user.
var newUser = new CRAMSUser()
{
UserName = "test",
Email = "[email protected]"
};
await _userManager.CreateAsync(newUser, "[email protected]!");
}
}
我試圖創建另一個類使用相同的方法更改密碼,但我很困惑如何創建一個currentUser對象以傳遞給RemovePassword和AddPassword調用。這是我到目前爲止有:
public async Task ChangePassword()
{
if (await _userManager.FindByEmailAsync("[email protected]") != null)
{
_userManager.RemovePasswordAsync(currentUser);
_userManager.AddPasswordAsync(currentUser, "newPassword");
}
}
有人請告訴我在正確的方向,因爲我是新來這個,不知道如何轉移currentUser對象,包含正在電子郵件搜索。
如果第二次操作失敗,那麼在兩個操作中執行操作並不好,用戶無法使用密碼 – Tseng
是的,使用ChangePasswordAsync方法可能會更好,但我認爲這超出了原始問題的範圍。 – jmoerdyk