Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class UserRepository : IUserRepository
- {
- private readonly SampleContext context;
- public UserRepository(SampleContext context)
- {
- this.context = context;
- }
- public async Task<User> GetUserAsync(string username, string password)
- {
- using (var userManager = new UserManager<IdentityUser>(new UserStore<IdentityUser>(context)))
- {
- var user = await userManager.FindByNameAsync(username);
- if (user == null)
- {
- return null;
- }
- var correctPassword = await userManager.CheckPasswordAsync(user, password);
- if (correctPassword)
- {
- return new User
- {
- UserName = username,
- Email = user.Email,
- Id = user.Id
- };
- }
- return null;
- }
- }
- public async Task SignUpUserAsync(User user)
- {
- using (var userManager = new UserManager<IdentityUser>(new UserStore<IdentityUser>(context)
- {
- AutoSaveChanges = false
- }))
- {
- var result = await userManager.CreateAsync(new IdentityUser
- {
- UserName = user.UserName,
- Email = user.Email,
- EmailConfirmed = true
- }, user.Password);
- if (!result.Succeeded)
- {
- throw new InvalidOperationException("Sign up failed!");
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement