我是ASP.net的新手,只是找不到任何關於如何在ASP.NET上提供靜態文件的文檔。我指的是像images/javascripts/jars/xls等文件...asp.net,如何提供靜態文件
爲了更清楚一點,我沒有興趣向用戶提供文件,而是對我的javascript,java小程序,等等...所以我在尋找的是一種方式來處理特定的GET請求與參數是返回具有適當的MIME類型的文件。
對於不同的方法,你有什麼建議嗎? 非常感謝!
我是ASP.net的新手,只是找不到任何關於如何在ASP.NET上提供靜態文件的文檔。我指的是像images/javascripts/jars/xls等文件...asp.net,如何提供靜態文件
爲了更清楚一點,我沒有興趣向用戶提供文件,而是對我的javascript,java小程序,等等...所以我在尋找的是一種方式來處理特定的GET請求與參數是返回具有適當的MIME類型的文件。
對於不同的方法,你有什麼建議嗎? 非常感謝!
使用絕對或根目錄相對路徑,以避免多級頁面
在ASP.NET你可以使用混亂的領先〜產生相對於當前站點的根目錄大多數服務器端控件的URL,如下所示:<img src="~/image.jpg" runat="server">
您還可以使用ResolveUrl
方法(以及其他類似方法)在不使用服務器端控件的情況下擴展此類路徑。更多信息
var JQueryPath=<%= Url.Content ("~/Img/myImage.jpg") %>"
:
如果您需要在您的JS代碼中使用這些路徑,你可以做以下
http://msdn.microsoft.com/en-us/library/system.web.ui.control.resolveurl.aspx
Best practices, How to specify relative path for css,javascript and images files?
這是不是真的一個ASP .NET問題,以及更多的IIS工作。
不要錯誤地假設你需要用服務器控件做所有事情。如果你只是希望人們能夠下載這些文件,那麼簡單的<a href='/yourstaticcontent'>link</a>
就可以做到,而且實際上最好是使用服務器端控件。
編輯 我同意Massimiliano從根源表達路徑。
如果您從控制面板安裝了IIS/ASP.NET,則可能未打開靜態內容。
你會發現在控制面板中爲它的複選框,啓用Windows功能打開或關閉:萬維網服務/常見HTTP功能/靜態內容
我沒有讓自己清楚,我想,我更新這個問題。我對爲用戶提供文件不感興趣。 – Jerome 2012-01-11 10:42:41