2011-12-15 63 views
0

我已經在我的控制器如下:修改列表中查看併發送回控制器

ViewBag.UserList = userlist.ToList(); 

    return View(); 

的用戶列表有以下3個領域:

姓氏,姓名,電話號碼

如何在用戶可以修改字段的視圖中創建列表? 我很熟悉使用foreach循環遍歷列表,但是如何編程修改記錄的功能?

我還需要知道如何將該列表發送回控制器,以便我可以將記錄插入到我的數據庫中。

回答

0

我認爲這是一個網絡mvc項目,因爲它被標記爲asp.net-mvc。

該視圖將呈現html。 html將包含(至少)一個表單,每個可編輯值的輸入和一個提交按鈕。最終的標記看起來像這樣

<form id="?" method="post" action="usercontroller/update"> 
    <input name="users.firstname[0]" value="john"/> 
    <input name="users.lastname[0]" value="doe"/> 
    <input name="users.phonenumber[0]" value="555-123-4567"/> 
    <input name="users.firstname[1]" value="jane"/> 
    <input name="users.lastname[1]" value="smith"/> 
    <input name="users.phonenumber[1]" value="555-123-4567"/> 
    <submit value="update"/> 
</form> 

在服務器上,你將有一個控制器

class UserController : BaseClassIfNecessary 
{ 
    public ActionResult() Update(User[] users) 
    { 
      foreach user update database 
      return RedirectAction("url"); 
    } 
} 
1

正如你所說,在視圖中迭代列表,使用要修改的每個屬性的TextboxFor()方法,添加一個提交按鈕,在控制器動作中添加List<T> list來捕捉更改,然後你就去了。

相關問題