初次認識asp.net mvc時,以為所有文件都需要走一遍路由,然后才能在客戶端顯示,
所以我首先介紹這一種方式
比如說:我們在服務器上有圖片: ~/resource/image/5.jpg
我們就需要在控制器下新寫:
(旨在當瀏覽器發出請求時,服務器內存讀取圖片文件,以圖片流的方式傳給瀏覽器)
public ActionResult GetImg()
{
string strPath = Server.MapPath("~/Resource/Image/5.jpg");
Image img = Image.FromFile(strPath);
MemoryStream ms = new MemoryStream();
img.Save(ms,System.Drawing.Imaging.ImageFormat.Jpeg);
return File(ms.ToArray(),"image/jpeg");
}
在視圖下:
<img src="/Home/GetImg" width="300" height="120" alt="正在加載..." />
運行程序即可得:
后台源碼:
(補充:稍微會浪費一下內存,如果是以此類方式讀取視頻數據,測試時將會出現內存不足的情況)
其次介紹第二種方式
在視圖下:
直接訪問靜態文件
<img src="~/Resource/Image/5.jpg" width="300" height="120" alt="正在加載..." />
(補充:快捷迅速可變,只是在資源數據方面不易保護)