MongoDB實現檔案刪除

來源:互聯網
上載者:User

MongoDB實現檔案刪除

做ITOO過程中,在實現mongodb檔案刪除的時候遇到點問題,上網查,網上資源很多,想查到自己想要的更是不容易,所以只能一個個試,還好心態好,琢磨了幾天實現了根據id刪除檔案,可是今天看了看,刪除有個地方需要最佳化,就是多選刪除,多次提示刪除成功,所以硬著頭皮一股勁把它解決了,這真要感謝傑哥啦,幫了我很大的忙啊

這是前台刪除的核心代碼:

//根據檔案id刪除選中檔案           $("#btndelete").click(function () {               //判斷是否選中了要刪除的檔案               var rows = $('#fileList').datagrid('getSelected');                                 if (!rows || rows == null) {                   $.messager.alert("提示", "請選擇要刪除的檔案。");                   return;               }                              var files = $('#fileList').datagrid('getSelections');                              var obj = eval(files);               var fileid = '';               //截取fileid               for (var i = 0; i < files.length; i++) {                   obj[i]._id += '|';                   fileid += obj[i]._id;//擷取id                                  }               console.log(fileid);               //傳資料,執行controller的delete方法               $.ajax({                   type: 'POST',                   url: '/MongodbHelp/ProcessRequest',                   data: { action: "DELETE", value: fileid },                   success: function (data) {                       getFiles();                       alert("刪除檔案成功");                   },                   error: function (err) {                       alert(err);                   }               });                 })


後台代碼:

/// <summary>            /// 根據objectid刪除檔案            /// </summary>            /// <returns></returns>            public void Delete()            {                //擷取前台的數組                string filesid = Request["value"];                //截取數組元素                string[] file = filesid.Split('|');                //去除最後一組的'|'                List<string> fileList = file.ToList();                fileList.Remove(fileList[fileList.Count - 1]);                //查庫                MongoGridFSSettings fsSetting = new MongoGridFSSettings() { Root = fileTable };                MongoGridFS fs = new MongoGridFS(DB, fsSetting);                MongoCollection collection = DB.GetCollection(fileTable + ".files");                //遍曆刪除                foreach (string item in fileList)                {                    var result = collection.Remove(Query.EQ("_id", new ObjectId(item)));                                    }                            }


總結:

多試試,膽子需要再大點




相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.