2013-04-05 63 views
0

我保存該文件名中帶空格的文件打開文檔,所以在數據庫中的網址是:無法從數據庫

http://wingtipserver/Lists/Knowit.Cv-EmployeeDocumentsListInstance/attachments/2/My Example Pdf File.pdf 

但是,當我想在的ImageButton打開它,使用ImageButton.PostBackUrl然後它不會打開,因爲文件路徑是:

http://wingtipserver/Lists/Knowit.Cv-EmployeeDocumentsListInstance/attachments/2/My%20Example%20Pdf%20File.pdf 

如何刪除空格?或者我應該做一個文件上傳驗證,所以我不能上傳文件與空格?

+0

你可以在將它寫入數據庫之前UrlEncode url,然後它應該匹配第二個版本。 – 2013-04-05 11:13:06

回答

0

如果直接看文件系統,編碼空間直接等於空格。

是的,你應該規範你的文件名,在我看來,沒有空格是有意義的,而是用連字符或其他'規範'字符替換。但是,除此之外,當你點擊URL時會發生什麼? 404? 500?如果您告訴我們您遇到的情況,那麼我們可能會給出適當的解決方案,但就目前而言,您認爲問題實際上不應該成爲問題。


在這裏糾正一下自己,當在數據庫中查看文件時,自然會出現字符串不匹配。爲了解決這個問題,你應該在查找之前解碼URL中的路徑,使用Server.UrlDecode(urlPart);

+0

當我點擊它時,出現錯誤404! – Kriistiian 2013-04-05 11:22:37

+0

我可以嘗試驗證,所以不允許有空格,現在我檢查你是否只能用這個表達式上傳'doc,docx和pdf':'(。* \。([Dd] [Oo] [Cc] )|。* \。([Dd] [Oo] [Cc] [Xx])|。* \。([Pp] [Dd] [Ff])$)'我怎麼投入所以它也沒有允許空格? – Kriistiian 2013-04-05 12:05:51