내가마다 자동으로 새로 등록 된 사용자에게 역할을 할당 할 accountController을 수 있도록 노력했다 존재하지 않는, 그래서 나는이 같은 일을 결국했습니다InvalidOperationException이 : 역할 testRole는
public async Task<IActionResult> Register(RegisterViewModel model, string returnUrl = null)
{
if (ModelState.IsValid)
{
var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
var result = await _userManager.CreateAsync(user, model.Password);
//there is where the error is being raised.
await _userManager.AddToRoleAsync(user, "testRole");
if (result.Succeeded)
{
//here goes some code
//have also adding this line of code inside this if stmt
//await _userManager.AddToRoleAsync(user, "testRole");
}
AddErrors(result);
}
return View(model);
}
내가 한 무엇의 다른 글 StackOverFlow 권장하지만이 오류가 계속 : InvalidOperationException : 역할 TESTROLE 존재하지 않습니다.
Microsoft.AspNetCore.Identity.EntityFrameworkCore.UserStore+d__34.MoveNext() System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) Microsoft.AspNetCore.Identity.UserManager+d__104.MoveNext() System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw() System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) System.Runtime.CompilerServices.TaskAwaiter.GetResult() WebApplication2.Controllers.AccountController+d__17.MoveNext() in AccountController.cs
주 :
- 내 프로젝트에 PostgreSQL을 사용하던, 그래서 MSSQL과 함께 새로운 프로젝트 을 생성하고 같은 오류와 함께 종료했습니다.
- 나는 TestRole이 AspNetRoles 테이블에 있는지 확인했습니다. 그래서, 그것도 아무런 문제가 없습니다!
TestRole이 AspNetRoles 테이블에 있습니까? – mvermef
PostgreSQL으로 돌아 가기로 결정했다면 거기에서도 작동합니다. – mvermef
고마워요. 제 프로젝트에서 작동했습니다. 나는 표준화 된 것이 거래 차단기라는 것을 알아 차리지 못했다! 다시 고마워! – NewProgrammer