上的ASP.NET 1.1的核心應用與ASP.NET身份創建用戶我創建了一個用戶:沒有的UserManager在Asp.Net核心身份
PasswordHasher<User> hasher = new PasswordHasher<User>();
User user = new User {
Email = "[email protected]",
Username = "[email protected]
};
user.PasswordHash = hasher.HashPassword(user, "johnpass");
context.Users.Add(user);
context.SaveChanges();
創建用戶,但是當我嘗試使用簽名以下它失敗:
SignInResult result = await _signInManager.PasswordSignInAsync("[email protected]", "johnpass", false, true);
然後我試着用的UserManager創建用戶:
PasswordHasher<User> hasher = new PasswordHasher<User>();
User user = new User {
Email = "[email protected]",
Username = "[email protected]
};
await userManager.CreateAsync(user, "johnpass");
現在我能登錄。看起來問題是使用HashPassword方法。
有沒有人知道如何在沒有UserManager的情況下創建用戶?
UPDATE
我嘗試沒有暈暈的注入,因爲我創建一個控制檯應用程序我的測試數據,而不是在Web應用程序創建的UserManager:
var userStore = new UserStore(Context);
var userManager = new UserManager<User>(userStore, null, null, null, null, null, null, null, null);
創建的用戶,但我我仍然無法登錄。
這不僅僅是密碼散列,還包括安全印章。 – DavidG
安全印章?你能給我一個例子如何解決它? –
那麼你已經得到了答案:使用'UserManager' – DavidG