将子实体从MVC视图传递回控制器

时间:2013-08-14 10:39:55

标签: asp.net-mvc razor

我正在尝试删除在视图中标记(选中)的条目,但不确定如何将集合传回给控制器
我的模式是:
具有Group和子组ICollection<SubGroup> SubGroups的{​​{1}} 我将ICollection<Event> Events传递给视图并迭代并显示事件详细信息,包括一个复选框,如果已选中,则应删除事件条目。
当我收到回发到控制器时,Group为空

  • 如何确保子实体传回控制器?
  • 我可以使用Group.SubGroups代替@Html.CheckBox吗?

更新:型号

<input type="checkbox"...

我将群组作为模型传递给视图(见下文),并希望删除用户检查的事件

查看:

public class Group
{
    [Key]
    public int GroupId { get; set; }
    public virtual IList<SubGroup> SubGroups { get; set; }
    ....
}

public class SubGroup
{
    [Key]
    public int SubGroupId { get; set; }
    public virtual IList<Event> Events { get; set; }
    ....
}

public class Events
{
    [Key]
    public int EventId { get; set; }
    public string EventName { get; set; }
    public bool IsDeleted { get; set; }
    ....
}  

谢谢

2 个答案:

答案 0 :(得分:0)

试试这个......

 public ActionResult ViewName(FormCollection collection)
    {
       if(collection['eventToDelete']!=null && collection['eventToDelete'].ToString()!="")
       {
           //delete....
       }
       return....
    }

答案 1 :(得分:0)

试试这个

 public ActionResult ViewName(Group model)
    {
       if(model != null && ModelState.IsValid)
       {
           //delete....
       }
       return....
    }