之前曾问过一些类似的问题,但我的用例有点不同。
这是我的模型:
public class YourModel
{
public string[] Suburb { get; set; }
}
我的观点:
<input name="Suburb" type="checkbox" value="sydney" /><span>sydney</span>
<input name="Suburb" type="checkbox" value="melbourne" /><span>melbourne</span>
Controller :
public ActionResult AdvancedSearch(YourModel s)
{
// logic
}
因此,MVC 足够智能,可以检索多个复选框值,并将它们放入 YourModel 模型的 Suburb 数组中。我可以检查那里的所有值。但我的用例是 YourModel 只是另一个模型 MyModel 中的嵌套模型:
public class MyModel
{
//other properties
public YourModel m { get; set; }
}
那么现在如何让 MVC 将复选框值发布到更深的模型 MyModel.YourModel
?我尝试过 @Html.CheckBoxFor
和 @Html.CheckBox
但它们都不起作用。
现在我的解决方法是在外部模型中添加一个临时数组占位符,然后在可用时将所有数据分配给内部模型,但这绝对不理想。
最佳答案
您需要使用添加MyModel
<input name="m.Suburb" type="checkbox" value="sydney" /><span>sydney</span>
<input name="m.Suburb" type="checkbox" value="melbourne" /><span>melbourne</span>
关于c# - 将多个复选框值传递到模型 .net mvc 的更深层次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48541125/