這一節來給大家演示下怎麼對用戶信息進行修改和刪除用戶,主要包括以下內容
1.顯示所有用戶
2.編輯用戶
3.刪除用戶
1.顯示所有用戶
我們把所有用戶信息查詢出來,以表格形式在頁面上顯示,效果圖如下:

首先把所有用戶信息顯示在index頁面上.找到index頁面對應的controller,然後查找出所有用戶信息,把查找出的用戶集合放在viewdata裡面
Controller代碼:
public ActionResult Index()
{
//查詢出所有用戶
DataSet ds = new Models.SqlHelper().GetAllUsers();
if (ds!=null&&ds.Tables[0].Rows.Count>0)
{
List<Models.UserModels> lists = new List<Models.UserModels>();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
Models.UserModels model = new Models.UserModels();
model.UserName = ds.Tables[0].Rows[i]["UserName"].ToString();
model.UserPwd = ds.Tables[0].Rows[i]["UserPwd"].ToString();
model.Email = ds.Tables[0].Rows[i]["Email"].ToString();
lists.Add(model);
}
if (lists.Count>0)
{
ViewData["users"] = lists;
}
}
return View();
}
Index頁面代碼
<table style="border-bottom-width:1px;">
<tr>
<td>用戶名</td>
<td>密碼</td>
<td>郵箱</td>
<td>編輯</td>
<td>刪除</td>
</tr>
<%foreach (var item in (ViewData["users"] as IEnumerable<MvcLogin.Models.UserModels>) )
{%>
<tr>
<td>
<%:item.UserName %>
</td>
<td><%:item.UserPwd %></td>
<td><%:item.Email %></td>
<td>編輯 <%:Html.ActionLink("編輯", "EditUser","user",new { userName=item.UserName},null)%></td>
<td><%:Html.ActionLink("刪除", "DelUser", "user", new { userName=item.UserName},null)%></td>
</tr>
<% } %>
</table>
點擊每行數據後面的編輯按鈕,轉向編輯頁面。接下來我們看看編輯頁面
2.編輯用戶
首先我們看下編輯頁面的效果圖

點擊每行的編輯鏈接,轉向編輯頁面,顯示當前用戶信息。
首先我們看下編輯頁面對應的controller:
/// <summary>
/// 轉向編輯頁面
/// </summary>
/// <param name="userName"></param>
/// <returns></returns>
public ActionResult EditUser(string userName)
{
//根據用戶名獲取用戶信息
DataSet ds = new Models.SqlHelper().GetSingleUser(userName);
if (ds != null && ds.Tables[0].Rows.Count > 0)
{
ViewData["username"] = ds.Tables[0].Rows[0]["username"].ToString();
ViewData["userPwd"] = ds.Tables[0].Rows[0]["userpwd"].ToString();
ViewData["email"] = ds.Tables[0].Rows[0]["email"].ToString();
return View("edituser");
}
else
{
return View("error");
}
}
然後在頁面上顯示用戶信息,在這個地方我們顯示頁面信息用viewdata來顯示。
頁面代碼
<form id="form1" method="post" action="/user/edituser?username=<%:ViewData["username"].ToString() %>">
<div>
修改用戶信息
<table class="style1">
<tr>
<td class="style2">
</td>
<td class="style3">
</td>
<td>
</td>
</tr>
<tr>
<td class="style2">
用戶名:</td>
<td class="style3">
<input type="text" id="txtUserName" name="txtUserName" disabled="disabled" value="<%:ViewData["username"].ToString() %>" />
</td>
<td>
</td>
</tr>
<tr>
<td class="style2">
密碼:</td>
<td class="style3">
<input type="text" id="txtUserPwd" name="txtUserPwd" value="<%:ViewData["userPwd"].ToString() %>"/>
</td>
<td>
</td>
</tr>
<tr>
<td class="style2">
郵箱:</td>
<td class="style3">
<input type="text" id="txtemail" name="txtemail" value="<%:ViewData["email"].ToString() %>" />
</td>
<td>
</td>
</tr>
<tr>
<td class="style2">
</td>
<td class="style3">
<input id="Button1" type="submit" value="提交" /></td>
<td>
</td>
</tr>
</table>
<%if (ViewData["errMsg"] != null)
{%>
<%:ViewData["errMsg"].ToString()%>
<%} %>
</div>
</form>
提交修改信息
在編輯頁面修改完用戶信息後,點擊提交按鈕,會提交用戶信息。
我們看下提交對應的controller
[HttpPost]
public ActionResult EditUser()
{
string userName = Request.QueryString["UserName"].ToString();
string userPwd = Request.Form["txtUserPwd"].ToString();
string email = Request.Form["txtemail"].ToString();
if (userName == "" || userPwd == "")
{
ViewData["errMsg"] = "用戶名和密碼不能為空";
return EditUser(userName);
}
else
{
//更新數據庫
bool result=new Models.SqlHelper().UpdateUser(userName, userPwd, email);
if (result)
{
//轉向主頁
DataSet ds = new Models.SqlHelper().GetAllUsers();
if (ds != null && ds.Tables[0].Rows.Count > 0)
{
List<Models.UserModels> lists = new List<Models.UserModels>();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
Models.UserModels model = new Models.UserModels();
model.UserName = ds.Tables[0].Rows[i]["UserName"].ToString();
model.UserPwd = ds.Tables[0].Rows[i]["UserPwd"].ToString();
model.Email = ds.Tables[0].Rows[i]["Email"].ToString();
lists.Add(model);
}
if (lists.Count > 0)
{
ViewData["users"] = lists;
}
}
return View("index");
}
else
{
ViewData["errMsg"] = "更新失敗";
return EditUser(userName);
}
}
在提交controller中,我們使用Request.Form獲取用戶輸入的內容。提交成功後,轉向INDEX首頁。
3.刪除用戶.
點擊刪除鏈接,會根據當前的用戶名,轉向刪除對應的controller
/// <summary>
/// 刪除用戶
/// </summary>
/// <param name="userName"></param>
/// <returns></returns>
public ActionResult DelUser(string userName)
{
bool result = new Models.SqlHelper().DelUser(userName);
DataSet ds = new Models.SqlHelper().GetAllUsers();
if (ds != null && ds.Tables[0].Rows.Count > 0)
{
List<Models.UserModels> lists = new List<Models.UserModels>();
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
Models.UserModels model = new Models.UserModels();
model.UserName = ds.Tables[0].Rows[i]["UserName"].ToString();
model.UserPwd = ds.Tables[0].Rows[i]["UserPwd"].ToString();
model.Email = ds.Tables[0].Rows[i]["Email"].ToString();
lists.Add(model);
}
if (lists.Count > 0)
{
ViewData["users"] = lists;
}
}
return View("index");
以上就是Asp.Mvc 2.0用戶的編輯與刪除實例的實現全過程,希望通過Asp.Mvc 2.0五節內容的學習可以更好地幫助大家掌握Asp.Mvc 2.0基本功能。