Добавление нового пользователя в таблицу AspNetUser вручную из другого проекта - PullRequest
1 голос
/ 14 апреля 2020

Я создал Asp. Net Core 3.0 Web Api проект с моделью идентификации ( Identity.EntityFrameworkCore Version = 3.1.3.0 ), теперь я могу войти в систему и зарегистрироваться, используя api controller, но у меня есть другой проект, созданный Asp. Net MVC 5 ( Database First ), который подключается к той же базе данных, которая мне нужна в MVC Проект добавляет пользователей в таблицу AspNetUsers непосредственно в общую базу данных без использования проекта Web Api.

[HttpPost]  
[ValidateAntiForgeryToken]  
public ActionResult AddUser(UserViewModel newUser)  
{  
   if (ModelState.IsValid)  
    {
      // How to add user manually here
     _dbContext.AspNetUsers.Add(newUser);  
     _dbContext.SaveChanges();  
    }  
    return View();  
}  

1 Ответ

0 голосов
/ 14 апреля 2020

вы должны использовать аннотацию [Body] для входной модели. и используйте маппер (бывший AutoMapper) для сопоставления вашей ViewModel с моделью Db. в методе IApplicationUserManager CreateAsyn c (пользователь, строковый пароль) создать пользователя.

var user = new User
{
     UserName = newUser.UserName,
     Email = newUser.Email
};
var result = await _userManager.CreateAsync(user, model.Password).ConfigureAwait(false);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...