.Net Core : Register User data into Identity table
Insert record in identity table,
namespace DotNetCoreDemo.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class AccountController : Controller
{
private readonly UserManager<IdentityUser> userManager;
private readonly SignInManager<IdentityUser> signInManager;
public AccountController(UserManager<IdentityUser> userManager, SignInManager<IdentityUser> signInManager)
{
this.userManager = userManager;
this.signInManager = signInManager;
}
[HttpPost]
[Route("Register")]
public async Task<JsonResult> Post(VMRegister vmRegister)
{
IdentityResult result = new IdentityResult();
string errorMessage = "success";
if(ModelState.IsValid)
{
var user = new IdentityUser
{
UserName = vmRegister.Email,
Email = vmRegister.Email
};
result = await userManager.CreateAsync(user, vmRegister.Password);
if(result.Succeeded)
{
//to Signin user
//signInManager.SignInAsync(user, isPersistent: false).Start();
}
else
{
if(result.Errors.Count() > 0)
{
errorMessage = "";
foreach (var error in result.Errors)
{
errorMessage += error.Description;
}
}
}
}
return Json(new { id = "1", message = errorMessage });
}
}
}
Hope this will help you and save your time.
Enjoy !!!
:)