2013-08-20 39 views
0

我得到了Chrome瀏覽器開發工具的網絡選項卡此錯誤消息:如何確定哪些資源調用失敗?

無法加載資源:服務器的狀態爲迴應400(錯誤請求)的http://本地主機/%3C%=%20System .Configuration.ConfigurationManager.AppSettings [%22ThisApp%22]%20 %% 3E/Content/Images/SSCSsprite.png

...但該圖像確實存在,在該位置,並在其他地方加載正常(我看到它稍後在狀態碼爲304的網絡堆棧中)。那麼,如何確定對該圖像的哪個引用是不好的?

有些地方引用該文件是這樣的:

background-image: url('/@ConfigurationManager.AppSettings["ThisApp"]/Content/Images/SSCSsprite.png'); 

...但別人都在用這種老式的風格:

background:#344f9b url('/<%= System.Configuration.ConfigurationManager.AppSettings["ThisApp"] %>/Content/Images/SSCSsprite.png') repeat-x 0 -368px; 
+1

我非常懷疑存在'http://localhost/%3C%=%20System.Configuration.ConfigurationManager.AppSettings [%22ThisApp%22]%20 %% 3E/Content/Images/SSCSsprite.png'。 – SLaks

+0

特別是,您在未預處理的文件中使用Razor和ASPX代碼。 – SLaks

+0

因此,我應該將所有對該.png的引用轉換爲第一種格式?我不確定爲什麼這比引用「/TLDReporter/Content/Images/SSCSsprite.png」更好(TLDReporter是項目的名稱)。 –

回答

1

對我來說,它看起來好像你正試圖將Razor代碼和/或asp.net內聯腳本編寫到外部樣式表中。就我所知,這是不可能的。

所以基本上你的背景與圖像的URL渲染爲是

`/@ConfigurationManager.AppSettings["ThisApp"]/Content/Images/SSCSsprite.png` 

`/<%= System.Configuration.ConfigurationManager.AppSettings["ThisApp"] %>/Content/Images/SSCSsprite.png` 

然後將其在編碼依次是URL。

我建議你更新你的背景圖片參考。

+0

「更新」,因爲它們都變成剃刀風格? –

+0

如果它們在外部樣式表中,那麼不可以,你不能把剃刀放進去。你需要有實際的路徑。您可以在'_Layout'頁面中放置'background-image'樣式,並將Razor腳本添加到其中。 –

+0

不,它全是內聯的東西;除了第三方CSS文件之外,還沒有使用外部CSS文件的方式。 –