Untitled
unknown
csharp
a month ago
2.0 kB
4
Indexable
using Microsoft.AspNetCore.Identity; using Microsoft.EntityFrameworkCore; using ShopApp.Services.Core.Interfaces; namespace ShopApp.Services.Core { public class ApplicationUserService : IApplicationUserService { private readonly UserManager<IdentityUser> _userManager; private readonly SignInManager<IdentityUser> _signInManager; public ApplicationUserService( UserManager<IdentityUser> userManager, SignInManager<IdentityUser> signInManager) { _userManager = userManager; _signInManager = signInManager; } public async Task<IEnumerable<IdentityUser>> GetAllApplicationUsersAsync() { return await _userManager.Users.ToListAsync(); } public async Task<IdentityUser> GetApplicationUserByIdAsync(string id) { var user = await _userManager.FindByIdAsync(id); if (user == null) { throw new InvalidOperationException("User not found."); } return user; } public async Task<IdentityResult> RegisterUserAsync(string email, string password, string firstName, string lastName, DateTime dateOfBirth) { var user = new IdentityUser { UserName = email, Email = email }; var result = await _userManager.CreateAsync(user, password); if (result.Succeeded) { await _signInManager.SignInAsync(user, isPersistent: false); } return result; } public async Task<SignInResult> AuthenticateUserAsync(string email, string password) { return await _signInManager.PasswordSignInAsync(email, password, isPersistent: false, lockoutOnFailure: false); } public async Task LogoutAsync() { await _signInManager.SignOutAsync(); } } }
Editor is loading...
Leave a Comment