ASP.NET.MVC刪除數據

開發工具與關鍵技術:VS   刪除
作者:聽民謠的老貓
撰寫時間:2019/4/20   17:15

數據查詢,新增,修改在我撰寫的博客中都已經講到過了,這篇博客將簡單的講述刪除;

______ 批量刪除

刪除可以是單條數據的刪除也可以是批量刪除數據,在這我講的是批量刪除。你可以通過批量刪除的方法去刪除單條數據,但是你不能用單條數據的刪除方法去批量刪除,掌握了批量刪除自然而然也明白了單條數據的刪除方法;

  1. 監聽行單擊事件
    首先要對需要刪除的數據進行選中
   //監聽行單擊事件
           layuiTable.on('row(tabEmployee)', function (obj) {
    (Obj代表的是選中行的數據,控制檯輸出可以得知)
           //標註選中行樣式 obj.tr.addClass("layui-table-click").siblings().removeClass("layui-table-cli   ck");
           //選中行,勾選複選框
          obj.tr.find("div.layui-unselect.layui-form-checkbox")[1].click();
                });

2.批量刪除(視圖層)

//批量刪除考生信息
            function delEmployees() {
                //獲取選中行數據
                var checkStatus = layuiTable.checkStatus("tabEmployee");
                console.log(checkStatus);
(CheckStatus選中數據的所有值,具體可以通過控制檯輸出得知)
                    var employeeIDS = "";
                    for (var i = 0; i < checkStatus.data.length; i++) {
(checkStatus.data.length選中數據的總條數,通過遍歷的方法爲每一條選中數據中的ID值後拼接上”;”將提取出來的ID值進行分割)
                        employeeIDS += checkStatus.data[i].EmployeeID + ";";//拼接字符串  9617;9611;split(;) }
//去掉最後的一個“;”
             //substring() 方法用於提取字符串中介於兩個指定下標之間的字符。
//substring(start,stop) 方法返回的子串包括 start 處的字符,但不包括 stop 處的字符。[0,studentIds.length-1)
             employeeIDS = employeeIDS.substring(0, employeeIDS.length - 1);
             $.post("delStuInfos", { EmployeeIDS: employeeIDS }, function (msg) {
                            //刷新表格
                            tabEmployee.reload();
};

_____ 筆記

刪除數據就如修改數據一樣依靠數據的ID值來選中數據,我這用的是批量刪除。所以提取出來的ID值是多條數據的
舉例: 單條數據刪除提取出來的ID值 9617
批量刪除提取出來的數據ID值 96179611
通過字符拼接形成的多條數據的ID值 9617;9611
批量刪除提取出來的ID值,提取出來後拼接在了一起,很明顯通過這個拼接出來的ID值我們無法刪除任何一條數據。但是通過字符拼接形成的多條數據的ID值,可以明顯的區分出每條數據對應的ID值就可以進行數據的刪除。

3.批量刪除(控制器)

 public ActionResult delStuInfos(string EmployeeIDS){
(EmployeeIDS是視圖層拼接好的ID字符串  //9617;9611)
                //對拼接好的id進行分割
                string[] employeeIDS = EmployeeIDS.Split(';'); //9617;9611 {"9617","9611",""}
                foreach (string EmployeeID in employeeIDS)
                {
                 //將string類型的數據轉化爲int
                 int employeeID = Convert.ToInt32(EmployeeID);//9617
                 PW_Employee dbEmployee = (from tbEmployee in myModels.PW_Employee
                 where tbEmployee.EmployeeID == employeeID
                 select tbEmployee).Single();
分割並且轉換類型就變成了我們需要的數據ID值,依靠ID將數據庫中的數據提取出來,進行Remove(移除);
                myModels.PW_Employee.Remove(dbEmployee);   (刪除關鍵句)  }

_____ 小結

將提取的ID值由原來的 96179611,進行字符串拼接成 9617;9611,再分割成 “9617” “9611”。 批量刪除無非就是多了這幾步。將ID值拼接成字符串,再將字符串分割成單個的ID值,就演變成了單條數據的刪除

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章