2014-09-06 64 views
0

是否有可能在视图中添加多个项目到列表?比方说,我有以下以下数据合同:将项目动态添加到列表中

public class Question 
{ 
    public int QuestionID { get; set; } 
    public string Name { get; set; } 
    public virtual List<AdditionalAnswer> AdditionalAnswers { get; set; } 
} 

public class AdditionalAnswer 
{ 
    public int AdditionalAnswerID { get; set; } 
    public AnswerTypeAnswerTypeEnum AnswerType { get; set; } 
} 

如果我创建一个新的Question,我将如何在Edit视图中添加多个AdditionalAnswers,同时还没有做任何的后背上?

+0

您将需要使用JavaScript来动态地添加新的元素,并确保它们属性命名(带索引),以便然后调回。看看[这个答案](http://stackoverflow.com/questions/24026374/adding-another-pet-to-a-model-form/24027152#24027152)为可能的解决方案 – 2014-09-06 02:00:13

回答

1

默认的模型绑定应该能够做到。关键是要动态地添加看起​​来像输入标签:

<input name="AdditionalAnswer[0].AdditionalAnswerID"/> 
<input name="AdditionalAnswer[0].AnswerType"/> 
<input name="AdditionalAnswer[1].AdditionalAnswerID"/> 
<input name="AdditionalAnswer[1].AnswerType"/>