我有一個用於模型視圖ViewSetup的編輯器模板。我使用模板視圖簡化爲使用編輯器模板枚舉mvc模型的表單提交
@model IEnumerable<ViewSetup>
@Html.EditorFor(s => s)
我ViewSetup編輯模板有表單提交如下圖所示:
using (Ajax.BeginForm("Edit", new AjaxOptions() { HttpMethod = "Post" }))
{
@Html.HiddenFor(p => p.TradingPartner.ID)
<input type="submit" value="Save" />
}
所以基本上我需要一個形式可枚舉的每個元素提交。但是我在表單提交時遇到了問題。我到後處理過程控制器:
public ActionResult Edit(ViewSetup formDataSent)
{
formDataSent.Save();
}
按默認模型結合我的TradingPartner財產越來越空,因爲在HTML中的名稱是:
<input name="[0].TradingPartner.ID" type="hidden" value="1"/>
我需要的是隻提交每個元素上的ViewSetup對象而不是數組。如果我可以刪除可以爲我工作的名稱中的索引部分。但是我不確定如何在表單提交中獲得ViewSetup對象。
不,但我有許多ViewSetup模型的屬性。它比這更復雜,但我剛纔簡化了上面的一個屬性。 – kjj
也許看看使用partials。每個部分可以有一個模型,並調用其他具有子模型的部分。但是,這會增加更多的冗長度。 –
我必須使用模板,因爲我必須在我的應用程序的許多地方重複使用它。 是否有某種方式我可以提交表單循環中的每個元素(只有我看到的方式是沒有索引獲得添加到html名稱)..謝謝。 – kjj