У меня есть следующая форма.
@model LoginVm
<form asp-controller="Sec"
asp-action="Authorize"
asp-all-route-data="@Model.Querify"
method="post">
Email: <input asp-for="@Model.UserName" /> <br />
Password: <input asp-for="@Model.Password" /><br />
<button type="submit">Send</button>
</form>
Модель представления выглядит следующим образом.
public class LoginVm
{
public string UserName { get; set; }
public string Password { get; set; }
public string ReturnUrl { get; set; }
public IDictionary<string, string> Querify
=> new Dictionary<string, string>
{
{ "username", UserName },
{ "password", Password },
{ "returnurl", ReturnUrl }
};
}
Однако в способе получения, показанном ниже, только значения, которые записываются вмодель представления до представления присутствует.Итак, что бы я ни вставил в модель представления перед передачей в представление, оно есть.Любые изменения, которые я пытаюсь внести в модель в полях ввода, будут потеряны.
[HttpPost]
public IActionResult Authorize(
[FromQuery]string returnUrl,
[FromQuery]string userName,
[FromQuery] string password)
{ ... }
Хотя я основываюсь на документах , которые я привязал значение из поля ввода к полям вмодель но видимо у меня нет.Не уверен, как диагностировать это дальше.