Модель ASP .NET Core MVC не представлена ​​в представлении - PullRequest
0 голосов
/ 26 сентября 2018

Итак, моя ситуация в том, что я заполняю модель на основе текстового поля в моем представлении.Мой код такой

Вид:

@model LiteModel
@using (Html.BeginForm())
{
    <label>Lite ID</label>
    @Html.TextBoxFor(model => model.LiteId)
    <br />
    <label>Width</label>
    @Html.TextBoxFor(model => model.BaseSize);
    <br />
    <label>Height</label>
    @Html.TextBoxFor(model => model.HeightSize);
    <br />
    <input type="submit" class="right" />
    <br />
}

Контроллер:

    [HttpPost]
    public IActionResult Index([FromForm]LiteModel model)
    {
        model = LoadLiteInfo(model);

        return View(model);
    }

Модель:

namespace LiteViewer.Models
{
    public class LiteModel
    {
        public string LiteId { get; set; }

        public string ShapeId { get; set; }

        public double BaseSize { get; set; }

        public double HeightSize { get; set; }
    }
}

Теперь я знаю, что метод LoadLiteInfo работаеткак предполагается, он заполняет объект модели так, как должен.Однако по какой-то причине изменения в модели не отражаются в представлении.Я не могу на всю жизнь понять, почему это не работает.

1 Ответ

0 голосов
/ 26 сентября 2018

Если вы вносите изменения в опубликованную модель, вам нужно позвонить ModelState.Clear().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...