2017-06-20 49 views
0

我試圖將DateTime.Now.Ticks添加到我的鏈接中,以阻止它緩存,因爲我會經常替換它。我在執行下面的代碼時遇到的問題是它在URL中添加了一個Content路徑。刪除指向ASP.NET中的文檔緩存的鏈接

原路段爲:

<a target="_blank" href="~/Documents/Data/Acct/MyDocument.pdf">Document</a> 

這顯然緩存瀏覽器上的文件,所以當我重寫MyDocument.pdf用戶看不到,除非他們按Ctrl-F5。所以,我把它改成如下:

<a target="_blank" [email protected]("{0}?t={1}", "~/Documents/Data/Acct/MyDocument.pdf", DateTime.Now.Ticks)>Document</a> 

這將產生一個鏈接,看起來像:內容/文檔〜/數據/會計/ MyDocument.pdf」這顯然不存在,因爲它增加的內容和保持〜。如果我刪除〜我仍然得到Content/Documents/Data/Acct/myDocument.pdf。如何阻止.NET將此內容添加到我的鏈接?

要添加,此鏈接的頁面在裏面的一個名爲Views/Content的文件夾中,所以我想這就是它被調用的地方,但是〜我認爲它應該上升到一個水平,但它不是。

+0

改爲使用Url.Content。檢查此答案https://stackoverflow.com/a/33439490/1189456 – mai

+0

您是否已將您的mvc項目設置爲部署到本地IIS而不是IIS Express? (右鍵點擊project - > properties。Got Web選項卡。)在本地IIS中,你有它指向一個虛擬目錄? –

回答

0
<a target="_blank" [email protected]("{0}?t={1}", "../Documents/Data/Acct/MyDocument.pdf", DateTime.Now.Ticks)>Document</a> 

如果你想在你的Url上使用../應該擺脫內容