刪除:
刪除附件資訊:
錯誤寫法:
listdbfiles = (from tbfile in mymodel.pw_file
where tbfile.noticeid == noticeid
select new pw_file
).tolist();
雖然表面看上去沒問題,但是這種語法在linq中寫法會報錯的.
主要衝突在於 pw_file
當你查單錶的時候,又要查原來的pw_file的時候,
只需要 tbfile 就行,因為 tbfile 本身就是 pw_file 的例項.
結果現在又建立乙個新的 pw_file 例項,它內部會轉不過來.
在這會轉換失敗,所以不需要再 new 乙個pw_file.
正確的寫法:
listdbfiles = (from tbfile in mymodel.pw_file
where tbfile.noticeid == noticeid
select tbfile).tolist();
刪除檔案;
刪除檔案之前要先挑一下,在刪子表時先得把主表刪掉.
因為把子表檔案刪完之後,刪主表的時候就會報錯.
主表會異常撤回,檔案刪除之後不能撤回的,所以這種情況下先把主表刪掉.
刪除主表檔案:
public actionresult deletenotice(int noticeid)
{returnjsonvo returenjson = new returnjsonvo();
using(var scop=new transactionscope())
{try
{刪除公告資訊:
用正規表示式匹配出名稱:
matchcollection oldbeforematchs = regex.matches(strcontent,"(?<=/document/notice/image/).+?(?=".+?/>)");
foreach (match match in oldbeforematchs)
{刪除:
刪除資料:
mymodel.pw_noticetable.remove(dbnotice);
然後再刪除附件資訊:
listdbfiles = (from tbfile in mymodel.pw_file
where tbfile.noticeid == noticeid
select tbfile).tolist();
刪除子表檔案:
foreach (pw_file pwfile in dbfiles)
{用正規表示式獲取檔名稱:
string strfilename = regex.match(pwfile.files, 「(?<=filename=).+?(?=」)").value;
在MVC應用程式中,怎樣刪除上傳的檔案
在asp.net mvc應用程式中,怎樣刪除上傳的檔案。由於上傳時,真正檔案是儲存在應用程式某一目錄,在資料庫表中,只是儲存其基本資訊。在刪除時,需要注意一下,由於沒有事務可操作。insus.net的實現方法,是先刪除物理路徑的檔案,然後是刪除資料庫記錄。開啟資料庫,寫乙個刪除記錄的儲存過程 在fi...
在MVC應用程式中,怎樣刪除上傳的檔案
在asp.net mvc應用程式中,怎樣刪除上傳的檔案。由於上傳時,真正檔案是儲存在應用程式某一目錄,在資料庫表中,只是儲存其基本資訊。在刪除時,需要注意一下,由於沒有事務可操作。insus.net的實現方法,是先刪除物理路徑的檔案,然後是刪除資料庫記錄。開啟資料庫,寫乙個刪除記錄的儲存過程 在fi...
MVC架構中的模式
mvc的起源自mvc起源於上個世界七十年代後期,trygve reenskaug開發並將之作為 alltalk平台的框架,具體就不細說了.以mvc為架構的系統包含了很多的設計模式,但是與mvc最為密切相關的有兩種模式 observer和 posite,如果業務邏輯不常變化,那麼可以不採用strate...