2013-07-25 130 views
3

是否有改變與來自請求參數的值綁定前綴的方法嗎?Asp.Net MVC動態模型綁定前綴

我有許多嵌套搜索彈出窗口,和他們都共享相同的視圖模型。

我可以在請求搜索過濾器時向所有字段添加綁定前綴,但我不知道如何使[綁定(前綴=「」)]與來自請求參數的值一起使用。

// get the search filters with the bindingPrefix we need 
public ActionResult Search(string bindingPrefix) 
{ 
    ViewData.TemplateInfo.HtmlFieldPrefix = bindingPrefix; 
    SearchViewModel model = new SearchViewModel 
    { 
     BindingPrefix = bindingPrefix 
    }; 

    return PartialView("_SearchFilters", model); 
} 

// post the search filters values 
[HttpPost] 
public ActionResult Search([Bind(Prefix = model.BindingPrefix)]SearchViewModel model) 
{ 

} 
+0

你爲什麼要更改綁定前綴的行動? – ataravati

回答

4

我不知道你爲什麼想這樣做,但這應該工作。

在視圖上的形式,有一個隱藏的價值

@Html.Hidden("BindingPrefix", Model.BindingPrefix) 

修改你的行動以下

[HttpPost] 
public ActionResult Search(SearchViewModel model) 
{ 
    UpdateModel(model, model.BindingPrefix); 
}