C# 什么';对于模型绑定复杂嵌套类型,有什么好的HTML命名约定?

C# 什么';对于模型绑定复杂嵌套类型,有什么好的HTML命名约定?,c#,asp.net-mvc,rest,viewmodel,model-binding,C#,Asp.net Mvc,Rest,Viewmodel,Model Binding,如果我有一个由嵌套的复杂类型组成的对象,例如一个具有列表和列表 我需要使用什么命名约定,以便在提交表单时,使用两个列表中选择的士兵填充以下action方法的WarViewModel public ActionResult WarAction(WarViewModel war) { return View(); } 我现在的理解是,模型绑定器不知道士兵是哪个,所以它不知道哪个Id与哪个士兵关联。我有办法解决这个问题吗?我知道上面的代码无法验证,但我正在尝试为自己实现一个概念验证 此外,需

如果我有一个由嵌套的复杂类型组成的对象,例如一个具有
列表
列表

我需要使用什么命名约定,以便在提交表单时,使用两个列表中选择的士兵填充以下action方法的WarViewModel

public ActionResult WarAction(WarViewModel war)
{
    return View();
}
我现在的理解是,模型绑定器不知道士兵是哪个,所以它不知道哪个Id与哪个士兵关联。我有办法解决这个问题吗?我知道上面的代码无法验证,但我正在尝试为自己实现一个概念验证


此外,需要更改哪些内容才能使此方法具有RESTful功能?

您尝试执行的操作已经得到支持:

<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<WarViewModel>" %>

<% using (Html.BeginForm("WarAction", "War")) { %>        
    <% foreach (var soldier in Fu) %>
        <select class="fu">
            <option id='<%= soldier.Id %>' age='<%= soldier.Age %>'><%= soldier.Name %></option>
        </select>
    <% } %>

    <% foreach (var soldier in Bar) %>
        <select class="bar">
            <option id='<%= soldier.Id %>' age='<%= soldier.Age %>'><%= soldier.Name %></option>
        </select>
    <% } %>        
<% } %>
public ActionResult WarAction(WarViewModel war)
{
    return View();
}