如何在视图中创建多对多关系

时间:2011-08-23 20:47:24

标签: asp.net-mvc-3

让我在我的问题中更具体。

我有很多关系。我有机会,我有物品。

在我的商机/创建视图中,我希望能够根据需要从项目列表中“添加”尽可能多的项目。因此,当我单击创建表单上的“保存”按钮时,我可能会保存许多与此记录关联的项目。

所以唯一的方法是在项目表中为每个项目添加一个点击框?如何点击此按钮从下拉列表中插入新项目?

型号:

public class Opportunity
{
    public int Id { get; set; }
    public string MyOpportunity { get; set; }
}

public class Items
{
    public int Id { get; set; }
    public string ItemName { get; set; }

}

public class ItemsToOpportunity
{
    public int Id { get; set; }
    public int OpportunityId { get; set; }
    public int ItemId { get; set; }

}

1 个答案:

答案 0 :(得分:0)

根据您的问题和评论,听起来您只需要提供一个包含多个复选框的表单。

然后,当您发布到服务器时,复选框的共享名称将成为逗号分隔的一组要使用的ID。

 <input type="checkbox" name="myNewOpportunityItems" value="1"><span>Item 1</span>
 <input type="checkbox" name="myNewOpportunityItems" value="2"><span>Item 1</span>
 <input type="checkbox" name="myNewOpportunityItems" value="3"><span>Item 1</span>
 <input type="checkbox" name="myNewOpportunityItems" value="4"><span>Item 1</span>

然后,当用户选择他们想要关联的项目的复选框时,会以逗号分隔的字符串发布:

 public ActionResult MyPostActionResult(string myNewOpportunityItems)
 {
       // myNewOpportunityItems == "1,3,4";
 }