下面是我的視圖模型MVC:無法回發視圖模型到控制器
public class ModelA
{
public string name {get;set;}
public string age {get;set;}
public ModelB modelB {get;set;}
}
這裏是局部視圖:_PartialView
@model ModelB
@*Bind all the into control*@
@Html.EditorFor(model => model.Name1)
@Html.EditorFor(model => model.Name2)
@Html.EditorFor(model => model.Name3)
這裏是視圖
@model ModelA
using (Ajax.BeginForm("ActionName", "AreaName", new AjaxOptions()
{
HttpMethod = "POST",
InsertionMode = InsertionMode.Replace,
OnSuccess = "BusinessPartner",
OnFailure = "ErrorThrown"
}, new { name = "My App", id = "My App" }))
{
@Html.EditorFor(model => model.name)
@Html.EditorFor(model => model.age)
@Html.Partial("_PartialView", Model.modelB)
<input type="submit" class="btn btn-primary tabSubmit tab1" id="tab1Next" value="Save and Proceed" />
}
當我做回發給控制器,我能夠獲得ModalA中的值,但ModalB爲空。 如果我將整個模型而不是Model.modelB傳遞到局部視圖中,我可以獲得所有的值。 這是MVC的預期行爲嗎?還是我需要任何配置?
其中是您的控制器操作方法代碼? –
如果你使用這樣的局部視圖,那麼你必須在acton參數中使用兩個視圖模型。公共ActionResult MyAction(ModelA modelA,ModelB modelB) –