2009-06-26 85 views
0

在我的web應用程序中,我動態生成圖像並希望將圖像顯示爲網頁的一部分。ASP.NET開發服務器從哪裏獲取其圖像?

但是,當使用ASP.NET開發服務器(而不是IIS)進行調試時 - 我不知道其中存儲這些圖像,以便它們可以從我的Web應用程序中引用。

我應該使用Directory.GetCurrentDirectory()

Assembly.GetExecutingAssembly()。Location

Assembly.GetExecutingAssembly()。CodeBase

這些路徑都不起作用。

任何想法?

回答

3

Server.MapPath("~/")將爲您提供Web應用程序根目錄的路徑。放置在該路徑範圍內的所有內容都應該由Web服務器自動公開,無論是IIS還是VS開發服務器。

Server屬性可用於所有Page對象,否則可以在HttpContext上找到。

+0

工作就像一個魅力,感謝schou-rode! – willem 2009-06-26 07:45:03

1

你可以寫ashx的處理程序,在運行服務器映像。 Here是這個教程。它要生成以後顯示出來,然後創建一個在您的網站文件夾樹中的文件夾,並使用此獲得它的物理路徑:

string imgPath = Server.MapPath("/") + "Images\" + IMAGENAME; 
1

做一個seprate aspx頁面,並把你的代碼overthere創造動態圖片.. 你的代碼應該看起來像....

 Response.ContentType = dtblProductImage[0].ImageFileExt;//image extension 
     Response.BinaryWrite(dtblProductImage[0].ImageData); //your image binary 


現在去,你要顯示你的形象和IMAGEURL的圖像屬性設置爲你的頁面,頁面時,它看起來像這樣...

<asp:Image ID="imgProduct" runat="server" ImageUrl="yourpage.aspx" />