Следующие контроллеры обрабатывают такие операции, как регистрация. Однако, когда я выполняю вызов метода Register
в контроллере с помощью axios, я получил следующую ошибку.
Не удалось загрузить ресурс: сервер ответил со статусом 500 ()
Однако, если я прокомментирую код внутри конструктора, вызов будет выполнен успешно. Я не понимаю, почему конструктор создает эту проблему. Какие-либо предложения?
public class ApplicationUserController : ControllerBase
{
private IUserService _userService;
private IMapper _mapper;
private readonly AppSettings _appSettings;
public ApplicationUserController(
IUserService userService,
IMapper mapper,
IOptions<AppSettings> appSettings
)
{
_userService = userService;
_mapper = mapper;
_appSettings = appSettings.Value;
}
[AllowAnonymous]
[HttpPost]
[Route("api/ApplicationUser/Register")]
public IActionResult Register([FromBody]ApplicationUserDto userDto)
{
//implementation details
}
}
Вот интерфейс IUSerServices:
public interface IUserService
{
ApplicationUser Authenticate(string username, string password);
}
public class UserService : IUserService
{
private myDbContext _context;
public UserService(myDbContext context)
{
_context = context;
}
public ApplicationUser Authenticate(string username, string password)
{
//implementation details
}
}
ДИ зарегистрирован в Startup.cs
services.AddScoped<IUserService, UserService>();
services.AddScoped<myDbContext>();