Я пытался наследовать IdentityUser, чтобы создать свой собственный класс, который использует Identity и все еще записывает в мою базу данных, и я продолжаю получать эту ошибку, когда пытаюсь вызвать метод регистрации :IdentityUser: «Имя не может быть пустым или пустым»
{
"$id": "1",
"Message": "The request is invalid.",
"ModelState": {
"$id": "2",
"": [
"Name cannot be null or empty."
]
}
}
Я пытался несколько вещей, но ничего works.For примера, когда я пытаюсь установить UserName поле IdentityUser он говорит, что это невозможно, потому что не существует в контексте. Важно отметить, что в том, что я использую базу данных ADO.NET первой модели за счет :)
Это класс:
public partial class Account :IdentityUser
{
public Account()
{
this.Families = new HashSet<Family>();
}
public long idAccount { get; set; }
public string email { get; set; }
public string password { get; set; }
public string firstName { get; set; }
public string lastName { get; set; }
public virtual ICollection<Family> Families { get; set; }
}
Это мой репозиторий аутентификации Класс:
public class AuthRepository :IDisposable
{
private DAKPAKEntities _ctx;
private UserManager<Account> _userManager;
public AuthRepository()
{
_ctx = new DAKPAKEntities();
_userManager = new UserManager<Account>(new UserStore<Account>(_ctx));
}
public async Task<IdentityResult> RegisterUser(Account userModel)
{
Account user = new Account
{
firstName = userModel.firstName,
lastName = userModel.lastName,
email=userModel.email
};
var result = await _userManager.CreateAsync(user,userModel.password);
return result;
}
}
И это контроллер, который вызывает хранилище:
// POST api/Account/Register
[AllowAnonymous]
[Route("Register")]
public async Task<IHttpActionResult> Register(Account userModel)
{
IdentityResult result = await _repo.RegisterUser(userModel);
IHttpActionResult errorResult = GetErrorResult(result);
if (errorResult != null)
{
return errorResult;
}
return Ok();
}
Я новичок в этом и не могу попробовать. Я сделал почти все, что обычно предлагается для такого типа ошибок, пожалуйста, помогите :)