diff options
Diffstat (limited to 'ExamTemplate/Web/Controllers/UserController.cs')
| -rw-r--r-- | ExamTemplate/Web/Controllers/UserController.cs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/ExamTemplate/Web/Controllers/UserController.cs b/ExamTemplate/Web/Controllers/UserController.cs new file mode 100644 index 0000000..cd472de --- /dev/null +++ b/ExamTemplate/Web/Controllers/UserController.cs @@ -0,0 +1,42 @@ +using ExamTemplate.Services; +using Microsoft.AspNetCore.Mvc; +using ExamTemplate.Web.Models.User; +using AutoMapper; +using ExamTemplate.Services.Models; +using System.Threading.Tasks; + +namespace ExamTemplate.Web.Controllers +{ + public class UserController : Controller + { + private readonly IMapper _autoMapper; + private readonly UserService _userService; + + public UserController(IMapper autoMapper, UserService userService) + { + this._autoMapper = autoMapper; + this._userService = userService; + } + + [HttpGet] + [Route("/Register")] + public IActionResult Register() + { + return View(); + } + + [HttpPost] + [Route("/Register")] + public async Task<IActionResult> Register(RegisterUserViewModel registerUserViewModel) + { + RegisterUserServiceModel registerUserServiceModel = this._autoMapper.Map<RegisterUserServiceModel>(registerUserViewModel); + + bool result = await this._userService.RegisterUserAsync(registerUserServiceModel); + + if (result) + return RedirectToAction("Index", "Home"); + else + return View(); + } + } +} |
