【发布时间】:2021-02-25 20:51:03
【问题描述】:
我正在使用一个包含多个模型的模型。我还使用 AJAX 请求将数据发送到操作。动作的参数包含包含多个模型的模型类型。主模型中的每个子模型都为空。我怎样才能解决这个问题。 型号:
public class MainModel
{
public SubModel1 sub1 {get;set;}
public SubModel2 sub2 {get;set;}
}
请注意 SubModel1 和 SubModel2 包含如下属性:1.Id、Name。 2. ID,位置。 控制器
public ActionResult PostData(MainModel main)
{
return View();
}
查看:
@model project.Models.MainModel
@using (Ajax.BeginForm("PostData", "ControllerMain",
new AjaxOptions()
{
HttpMethod = "POST",
}))
{
@Html.TextBoxFor(model => model.sub1.Id, new { @Value = "1"})
@Html.TextBoxFor(model => model.sub1.Name, new { @Value = "user1"})
@Html.TextBoxFor(model => model.sub2.Id, new { @Value = "1"})
@Html.TextBoxFor(model => model.sub2.Location, new { @Value = "UK"})
<button type="submit" class="btn btn-primary" id="SaveData">Save</button>
}
当我使用调试器检查 main 时,我得到两个模型的值为 null。我怎样才能解决这个问题。如果我将 PostData 的参数更改为 SubModel1 或 SubModel2,以下可能会很有用。我确实获取了数据,但事实并非如此,因为我想获取多个模型的数据。
【问题讨论】:
标签: c# ajax asp.net-mvc