我开始使用ASP.NET MVC4,遇到了一些小麻烦:)我有一个视图模型,看起来像这样:
public class Adulte{
public string Name {get;set;}
public List<Child> Children {get;set;}
}
public class Child{
public string Name {get;set;}
public int Age {get;set;}
}
我想在视图中动态添加/删除子项。
@Ajax.ActionLink("Add Child",
"AddChild",
new { ???= ??? },
new AjaxOptions
{
InsertionMode = InsertionMode.InsertAfter,
HttpMethod = "POST"
}
)
.....
@using (Html.BeginForm())
{
<div id="parent">
<p>
@Html.Label("Name")
@Html.TextBoxFor(x => x.Name)
<p>
</div>
<div id="children">
</div>
<input type="submit" value="Save" />
}
但我不知道该把哪个参数发送到ActionLink,我用Model和Model.Children进行了测试,但没有成功。
这是可以做到的吗?
有什么帮助吗?
在Adulte
或Child
中具有一些关键属性。或者,如果Name
属性将是唯一的,则可以为Adulte
或Child
发送Name
。
public class Adulte{
public int AdulteId {get;set;}
public string Name {get;set;}
public List<Child> Children {get;set;}
}
public class Child{
public int ChildId {get;set;}
public int Age {get;set;}
}
在视图中,(删除Child
)
@Ajax.ActionLink("Remove Child",
"RemoveChild",
new { ChildId = ChildId },
new AjaxOptions
{
InsertionMode = InsertionMode.InsertAfter,
HttpMethod = "POST"
}
)
要添加Child
,可以不带参数地传递它。
...
"AddChild",
null,
new AjaxOptions....