Привязка модели ядра Asp.net не отображает значение после почтового запроса - PullRequest
0 голосов
/ 10 мая 2019

Я новичок в asp.net core mvc.То, что я пытаюсь сделать, это привязать мою модель представления к моей точке зрения.В запросе получения он работает нормально, но после отправки запроса и передачи его представлению, хотя мои модели представления имеют значения, он все равно ничего не отображает.

Это то, что я сделал.

 [HttpGet]
    public IActionResult Tito()
    { 

        return View();
    }


    [HttpPost]
    public IActionResult Tito(AttendanceViewModel model, string submit)
    {      
        model.AccountModelId = HttpContext.Session.GetString("myaccountid");
        model.IsTimeIn = submit == "timein" ? true : false;
        model.DateFrom = DateTime.Now;
        Tuple<bool,DateTime> result = this.service.LogAttendance(model);

        if (result.Item1 == true)
        {                
            return View(model);
        }            

        return View();
    }

На мой взгляд

 @model TESTCOREMVC.VIEWMODELS.Attendance.AttendanceViewModel

 <form asp-action="Tito">

                <div class="form-body">
                    <div class="card-body">
                        <div class="row pt-3">
                            <div class="col-md-6">
                                <div class="form-group">
                                    <label asp-for="DateFrom" class="control-label" style="font-weight:bold">Time - In</label>                                        
                                    <input asp-for="@Model.DateFrom" readonly type="text" id="timein" class="form-control" placeholder="You don't have a time - in yet.">
                                    @*<small class="form-control-feedback"> This is inline help </small>*@
                                    <br /><br />
                                    <button name="submit" value="timein" type="submit" class="btn btn-info" id="btntimein"> <i class="mdi mdi-login-variant"></i> Time - In</button>                                        
                                </div>
                            </div>

                            <div class="col-md-6">
                                <div class="form-group">
                                    <label asp-for="DateTo" class="control-label" style="font-weight:bold">Time - Out</label>
                                    <input asp-for="@Model.DateTo" readonly type="text" id="timeout" class="form-control" placeholder="You don't have a time - out yet.">
                                    @*<small class="form-control-feedback"> This is inline help </small>*@
                                    <br /><br />
                                    <button name="submit" value="timeout" type="submit" class="btn btn-danger" id="btntimeout"> <i class="mdi mdi-logout-variant"></i> Time - Out</button>
                                </div>
                            </div>
                        </div>

                    </div>

                </div>
            </form>

Он должен отображать дату и время после отправки запроса, но это не так.

1 Ответ

0 голосов
/ 10 мая 2019

Убедитесь, что входные данные вашей модели имеют атрибут "name".Попробуйте добавить:

name="Model.PropertyName" к входному тегу

Или попробуйте использовать включенные вспомогательные методы, такие как @ Html.EditorFor () https://www.tutorialsteacher.com/mvc/htmlhelper-editor-editorfor

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