台灣最大程式設計社群網站
線上人數
855
 
會員總數:246268
討論主題:189809
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 請問於DetailView內的EditItemTemplate使用FileUpload方式
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
請問於DetailView內的EditItemTemplate使用FileUpload方式
價值 : 15 QP  點閱數:605 回應數:3
樓主

Chihyu Yeh
門外漢
0 8
94 5
發送站內信

各位程式先進們好~

我的狀況是這樣的,我設計了一個頁面(命名為Member),並連結資料庫,內容有很多項(包含身分證字號、戶籍地址等等)

其中一項是存放存款簿封面,以相對路徑的方式存在資料庫,之後我又設計了一個頁面(MemberDetail),只有一個DetailView,主要是讓使用者KEY完資料後可以再次確認,如果有誤可以再次修改。

-------以上前情提要-------

當我在設計DetailView的EditItemTemplate裡面放了FileUpload,如果使用者上傳錯,可以利用編輯的方式更新資料庫裡面的FileName,並同時覆蓋掉之前在Member頁面裡上傳的存款簿封面,請問後台的寫法該怎麼寫呢?

以下是我的前端寫法









搜尋相關Tags的文章: [ DetailView ] , [ EditItemTemplate ] , [ FileUpload ] ,
本篇文章發表於2017-08-23 15:48
1樓
最有價值解答

topcat
捐贈 VP 給 topcat 檢舉此回應
當我在設計DetailView的EditItemTemplate裡面放了FileUpload,如果使用者上傳錯,可以利用編輯的方式更新資料庫裡面的FileName,並同時覆蓋掉之前在Member頁面裡上傳的存款簿封面,請問後台的寫法該怎麼寫呢?

小喵稍微整理一下:
1.您在DetailView中提供了FileUpload讓使用者上傳檔案
2.上傳檔案後,會將檔案存在Sever的檔案系統中,並且在資料庫中,會存放該檔案的「虛擬路徑+檔名」
3.您希望提供使用者可以「重新上傳,並蓋掉原有檔案」的功能(這部分小喵猜測您的需求是這樣)

請教,您的需求是如同小喵所描述的嗎?

「重新上傳,並蓋掉原有檔案」有幾個動作要處理
1.刪除原有檔案系統內的檔案
2.清除資料庫中的檔案路徑名稱
3.將重新上傳的檔案,存放檔案系統中
4.將重新上傳的檔案路徑名稱,維護資料庫

大致上的過程大約如上所描述,您想想看,這樣OK嗎?符合您的需求嗎?
如果OK,逐步把1,2,3,4實做出來,就可以囉

比較麻煩的是,檔案必須上傳成功,才能去做1,2,3,4
所以,建議的是
a.讓使用者上傳,並把上傳檔案存放於檔案系統中的中繼位置(暫存位置)
b.確認a.檔案傳放無誤
c.刪除原有檔案系統內的檔案
d.清除資料庫中的檔案路徑名稱
e.將中繼位置的檔案,「搬移move」到真正的位置存放
f.將重新上傳的檔案路徑名稱,維護資料庫

這樣您看如何?
如果OK就把a,b,c,d,e,f逐一實做出來
^_^
本篇文章回覆於2017-08-23 16:09
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
作者回應

Chihyu Yeh
檢舉此回應
謝謝小喵版主的重新描述~您說的的確都是我的需求,因為剛學asp.net很多東西不太懂

想請問一下,如果我要按照您說,「使用者上傳,並把上傳檔案存放於檔案系統中的中繼位置(暫存位置)」

請問這部分該怎麼做呢?

本篇文章回覆於2017-08-23 16:25
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
回應

topcat
捐贈 VP 給 topcat 檢舉此回應
這一篇參考一下
https://dotblogs.com.tw/topcat/2008/03/05/1240
本篇文章回覆於2017-08-23 17:02
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.