У меня есть действие POST в контроллере, как показано ниже
[HttpPost]
[ValidateAntiForgeryToken]
[AllowAnonymous]
public async Task<IActionResult> SignIn([ModelBinder(typeof(SignInRequestModelBinder))] SignInRequestModel request, string returnUrl = null)
{
if (!ModelState.IsValid)
{
return View();
}
var result = await _accountService.SignInAsync(request);
if (!string.IsNullOrWhiteSpace(returnUrl))
{
return Redirect(returnUrl);
}
return Json(result);
}
У меня есть такая модель запроса
public class SignInRequestModel
{
[Required(ErrorMessage = "Email is required.")]
[EmailAddress]
public string Email { get; set; }
[Required]
[DataType(DataType.Password)]
public string Password { get; set; }
[Display(Name = "Remember Me")]
public bool RememberMe { get; set; }
}
Я отправляю данные в связыватель модели через jQuery AJAX, но я могу это сделатькак это
var request = bindingContext.ActionContext.HttpContext.Request;
var model = new SignInRequestModel()
{
Email = request.Form["Email"],
Password = request.Form["Password"],
}
Это жестко закодировано, но как я могу сделать это другим способомКогда вы отправляете данные, пользовательские связующие модели делают это вместо того, чтобы писать запрос. Форма [] ...
Спасибо за помощь.