我有,我有,以顯示存儲在我的本地磁盤C中的圖像的ASP頁: 即 C:\ Program Files文件\腎上腺素\腎上腺素\ UPLOADEDFILES \ TemplateFile \ abc.jpg的如何顯示存儲在本地驅動器中的圖像?
如何我可以這樣做嗎......我無法這樣做。 圖像不會顯示,而是顯示一個空的圖像保持器,其中指定的圖像的名稱和URL不可用。
請幫助....
我有,我有,以顯示存儲在我的本地磁盤C中的圖像的ASP頁: 即 C:\ Program Files文件\腎上腺素\腎上腺素\ UPLOADEDFILES \ TemplateFile \ abc.jpg的如何顯示存儲在本地驅動器中的圖像?
如何我可以這樣做嗎......我無法這樣做。 圖像不會顯示,而是顯示一個空的圖像保持器,其中指定的圖像的名稱和URL不可用。
請幫助....
你將有權限問題如果圖像是網站文件夾之外。傳統上,網站在NETWORK SERVICE用戶帳戶下運行,這將限制對文件夾外文件的訪問。您需要從具有相似訪問權限的文件夾中提取文件,並且特別不適合這樣做,特別是來自Program Files。
您應該可能通過網頁或網絡服務代理文件,這不會暴露圖像在網站外部提供的事實。您需要確保目標文件夾C:\ Program Files \ Adrenalin \ Adrenalin \ UploadedFiles \ TemplateFile具有網絡服務讀取權限。
例如。通過訪問URL
http://<localhost>/<website>/ImageServer.aspx
你應該得到的圖像
class ImageServer
{
void Page_Load(object sender, EVentArgs e)
{
Response.ContentType="image/jpeg"; // for JPEG file
string [email protected]"C:\Program Files\Adrenalin\Adrenalin\UploadedFiles\TemplateFile\abc.jpg";
Response.WriteFile(physicalFileName);
}
}
在瀏覽器
和測試:創建一個空白的ASP.NET頁面:
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="ImageServer.aspx.cs" Inherits="ImageServer" %>
與後面的代碼。
然後,標籤內,使用頁面的URL作爲您的圖像佔位符:
<img src="ImageServer.aspx" alt="Image served" />
UPDATE:
看你的最新意見,我建議你發送一個查詢參數與某種的員工代碼,並使用它來查詢數據庫並在Page_Load()方法中獲取適當的文件名。不要發送文件名作爲QueryString的一部分。
你想要做的事情可以工作,但它在Web開發中非常灰心。把權限問題放在一邊(這是非常嚴重的),你永遠不能認爲你的圖像將在驅動器C:上提供的絕對路徑中可用。
你應該做的是在你的網站目錄中創建一個文件夾,並用它來存儲圖像,並使用相對鏈接而不是絕對鏈接。
即使您設法使絕對鏈接現在可以正常工作,在將來以不同的配置運行應用程序時,您也可以爲將來的服務器頭痛準備好。
複製項目根文件夾中的圖像,並提供圖像源作爲圖像名稱而不是完整路徑。 例如,img src =「battlefield.jpg」
爲我工作:imgage.ImageUrl =「battlefield.jpg」; – 2015-03-11 15:59:13
向我們展示一些代碼。如果您沒有發佈您的代碼以及您遇到什麼錯誤和問題,很難猜測您遇到的問題。 – Oded 2010-06-28 07:41:27
實際上我有一個數據庫,其中上面提到的路徑是爲不同的員工存儲的......當我點擊employeee的名稱時,它應該檢索與該員工相對應的圖像的路徑並顯示其image.Now我能夠從數據庫中檢索路徑,但它不顯示存儲在C:驅動器中的映像。 可能發生了什麼問題? – jasmeet 2010-06-28 07:50:13