程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> ASP.NET基礎 >> Asp.Mvc 2.0用戶的編輯與刪除實例講解(5)

Asp.Mvc 2.0用戶的編輯與刪除實例講解(5)

編輯:ASP.NET基礎

這一節來給大家演示下怎麼對用戶信息進行修改和刪除用戶,主要包括以下內容
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基本功能。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved