包含 ViewComponent 的表单
Form containing with ViewComponent
我不知道如何在表单中使用 ViewComponent
表单正确呈现(下拉列表中的值),但模型绑定在发布表单时失败
这是风景
<form asp-action="" method="post">
<div asp-validation-summary="All"></div>
<div class="row">
<vc:periodi model="@(Model.Periodi)"></vc:periodi>
</div>
这是视图组件
<div class="col-2">
@(Html.Kendo().DropDownListFor(a => a.Anno)
.DataTextField("Text")
.DataValueField("Value")
.BindTo(Model.Anni)
.HtmlAttributes(new { style = "width: 100%" }))
无论我在下拉列表中选择什么,模型的 Object Periodi 中的变量 Anno 都是空的
我检查了渲染的 HTML
<input id="Anno" name="Anno" ...
我认为,根据我使用 MVC 的经验,模型绑定程序应该类似于 "Periodi.Anno" 才能工作。
有什么建议吗?
根据您的经验,名称应为 Periodi.Anno
以绑定 ViewComponent 属性。
作为我使用 input
标签进行的测试,如下所示:
<input asp-for="Name" name="MVCSubModel.Name" class="form-control" />
我建议你试试:
@(Html.Kendo().DropDownListFor(a => a.Anno)
.DataTextField("Text")
.DataValueField("Value")
.BindTo(Model.Anni)
.HtmlAttributes(new { style = "width: 100%"; name = "Periodi.Anno" }))
我不知道如何在表单中使用 ViewComponent
表单正确呈现(下拉列表中的值),但模型绑定在发布表单时失败
这是风景
<form asp-action="" method="post">
<div asp-validation-summary="All"></div>
<div class="row">
<vc:periodi model="@(Model.Periodi)"></vc:periodi>
</div>
这是视图组件
<div class="col-2">
@(Html.Kendo().DropDownListFor(a => a.Anno)
.DataTextField("Text")
.DataValueField("Value")
.BindTo(Model.Anni)
.HtmlAttributes(new { style = "width: 100%" }))
无论我在下拉列表中选择什么,模型的 Object Periodi 中的变量 Anno 都是空的
我检查了渲染的 HTML
<input id="Anno" name="Anno" ...
我认为,根据我使用 MVC 的经验,模型绑定程序应该类似于 "Periodi.Anno" 才能工作。 有什么建议吗?
根据您的经验,名称应为 Periodi.Anno
以绑定 ViewComponent 属性。
作为我使用 input
标签进行的测试,如下所示:
<input asp-for="Name" name="MVCSubModel.Name" class="form-control" />
我建议你试试:
@(Html.Kendo().DropDownListFor(a => a.Anno)
.DataTextField("Text")
.DataValueField("Value")
.BindTo(Model.Anni)
.HtmlAttributes(new { style = "width: 100%"; name = "Periodi.Anno" }))