Частичное представление Core 2.2 публикует одно свойство из родительской модели представления, но опубликованная модель имеет нулевые значения свойств - PullRequest
0 голосов
/ 28 сентября 2019

Родительский вид Модель:

public class HomeIndexViewModel
{
    // other properties here - not needed by partial view
    public InitiateCaseViewModel InitialCaseModel { get; set; }
}

public class InitiateCaseViewModel
{
    // other properties for partial view here
    public string Name { get; set; }
}

Родительский вид:

<partial name="~/Views/Case/Partials/_CreateCaseButtonsPartial.cshtml" for="@Model.InitiateCaseModel" />

Контроллер: Контроллерзаполняет модель родительского представления, и это - дочерняя модель представления для частичного представления.Предварительно загруженные значения отображаются в форме частичного представления, включая список выбора и т. Д.

Частичное представление

@model InitiateCaseViewModel
<form asp-action="InitiateCase" asp-controller="Case" id="createEnforcementCaseForm">
        <div>
            <label for="SelectedCaseTypeCode"></label>
            <select class="form-control"
                asp-for="SelectedCaseTypeCode"
                asp-items="@(new SelectList(Model.CaseTypes, "Code", "Description"))"></select>
        </div>
        <label for="@Model.Name"></label>
        <input type="text" for="@Model.Name"/>
        <input type="submit" value="Submit"/>
</form>

Способ отправки:

[HttpPost]
[ValidateAntiForgeryToken]
public async Task<IActionResult> InitiateCase(InitiateCaseViewModel model) 
{
    // model is NOT null here
    // model fields are ALL NULL within the model, e.g. model.Name == null
    // The SelectedCaseTypeCode value is null
    // The "<label for" tags are empty - in spite of a Display(Name="llll") attribute on the model properties
}

Я думаю, что проблема как-то связана с привязкой ... но я не знаю!Было бы чисто и аккуратно, если бы я мог опубликовать форму из частичного представления, используя только модель частичного представления ... и эта модель частичного представления является переданным свойством модели представления родительской страницы.

Спасибо за внимание ....

В Айдахо в тупике

...