2015-09-10 72 views
0

我有10個文本類型輸入控件,第一個選項卡上的5個& 5在同一頁上的第二個選項卡上。將多個控件綁定到MVC中的集合

現在我有一個類,

public partial class TravelerMaster 
{ 
    public virtual ICollection<TravelerDetail> TravelerDetails { get; set; } 
} 

具有集合作爲TravelerDetail。

public partial class TravelerDetail 
{ 
    public byte PackageTypeId { get; set; } 
    public int? NoOfPackage { get; set; } 
    public decimal? Weight { get; set; } 
    public decimal? PricePerKg { get; set; } 
    public decimal? PricePerPackage { get; set; } 
} 

我如何綁定控件,以便當我發佈數據時,TravelerMaster對象在其集合中有兩個對象。

請幫幫我。提前致謝。隨意問任何查詢。

+0

請問您能指定爲什麼您投票了嗎? –

+0

您應該指定問題,例如提供代碼。 – Mediator

+0

這不是我低估了,但你的問題缺乏自我努力的跡象。你知道關於綁定的一切嗎?你試過什麼了? – Breeze

回答

2

您可以像這樣提交一個特定模型的集合。通過應用索引(這可能是唯一的東西,但我用來便於整數值),你可以提交相同的模式,控制器的集合:

<div id="tab1"> 
    @Html.Hidden("data.Index","1") 
    @Html.TextBox("data[1].weight", "", new { @class = "your-class-names", @id = "data[1].weight" }) 
    ...other fields... 
</div> 
<div id="tab2"> 
    @Html.Hidden("data.Index","2") 
    @Html.TextBox("data[2].weight", "", new { @class = "your-class-names", @id = "data[2].weight" }) 
    ...other fields... 
</div> 

控制器

[HttpPost] 
public ActionResult YourControllerMethod(IEnumerable<TravelerDetail> data) 
{ 
    if (data==null || data.Count() == 0) throw new Exception("No Data Added"); 
    ....other validation... 
    foreach(var item in data) { 
     ...database work... 
    } 
} 
+0

好的thanx,讓我試試這個代碼,並再次回到你 –

+0

它比一個洛特人工作。 –

+0

@MurtazaMunshi很樂意提供幫助 – scgough