diff options
Diffstat (limited to 'ExamTemplate/Services/UserService.cs')
| -rw-r--r-- | ExamTemplate/Services/UserService.cs | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/ExamTemplate/Services/UserService.cs b/ExamTemplate/Services/UserService.cs index 848edf6..f8075f5 100644 --- a/ExamTemplate/Services/UserService.cs +++ b/ExamTemplate/Services/UserService.cs @@ -3,6 +3,7 @@ using AutoMapper; using ExamTemplate.Data.Models;
using ExamTemplate.Data.Repositories;
using ExamTemplate.Services.Models;
+using Microsoft.AspNetCore.Identity;
namespace ExamTemplate.Services
{
@@ -10,11 +11,13 @@ namespace ExamTemplate.Services {
private readonly IMapper _autoMapper;
private readonly UserRepository _userRepository;
+ private readonly SignInManager<User> _signInManager;
- public UserService(IMapper autoMapper, UserRepository userRepository)
+ public UserService(IMapper autoMapper, UserRepository userRepository, SignInManager<User> signInManager)
{
this._autoMapper = autoMapper;
this._userRepository = userRepository;
+ this._signInManager = signInManager;
}
public async Task<bool> RegisterUserAsync(RegisterUserServiceModel registerUserServiceModel)
@@ -26,5 +29,14 @@ namespace ExamTemplate.Services return userCreateResult && addRoleResult;
}
+
+ public async Task<bool> LoginUserAsync(LoginUserServiceModel loginUserServiceModel)
+ {
+ User user = await this._userRepository.GetByUsernameAsync(loginUserServiceModel.Username);
+
+ var result = await this._signInManager.PasswordSignInAsync(loginUserServiceModel.Username, loginUserServiceModel.Password, false, false);
+
+ return result.Succeeded;
+ }
}
}
|
