2010-01-08 64 views
3

在我的ASP.NET(3.5)應用程序,我沒有全球性的異常處理,如果未處理的異常被拋出的,而不是讓標準的黃色ASP.NET錯誤,我「M得到(每次都不同相當長,和)一堆垃圾字符 - 東西一樣:未處理的異常返回垃圾字符,而不是錯誤

y6hH」:ղ>安永裟 Y >: O b >ZV 「+壦 A (? Ӫ G 2 = % w @}

顯然,我「會通過將正確的例外應用程序處理解決這個問題,但你有什麼想法,這可能是什麼?出於調試目的,它有時很高興看到黃色的例外卵石ñ。

我看到這個無論是在我的開發環境(Windows 7)中,並在服務器上(我認爲這是Windows Server 2003與IIS6,但我不知道)。

它發生在所有的瀏覽器 - 如果我查看源代碼,垃圾字符實際上是在源。

感謝

回答

1

這可能是一個字符編碼的問題。

+2

是不相關的.NET字符編碼,而是內容的編碼我的迴應的。我在Global中使用Application_PreRequestHandlerExecute來使用deflate或gzip壓縮輸出,並且不知怎的,這段代碼搞砸了。通過搜索字編碼的代碼找到它。刪除它返回了黃色錯誤屏幕。 現在我知道原因了,我對全局錯誤處理感覺更好。 感謝您的想法。 – 2010-01-08 04:10:50

1

這聽起來像是某種內存損壞。您是否嘗試過在開發機器上通過Visual Studio執行代碼執行調試?僅通過YSODs進行調試有時會很難找到錯誤的確切原因。

+0

調試只是讓我給點時拋出異常,那麼當我繼續,我得到的廢話字符,而不是黃屏。我知道這不是一個物理內存,因爲它在我的本地機器和其他地方託管的服務器上具有相同的行爲。 感謝 – 2010-01-08 04:05:06

+0

你可以分享拋出錯誤的代碼的函數調用?我已經看到了奇怪的情況是這樣,在過去的時候有潛在的權限錯誤,這可能是東西,會影響你的測試和生產平臺。 – 2010-01-08 12:45:33

+0

約什 - 感謝,但退房時間接受了被標記其他答案 - 原來它涉及到壓縮我已經打開。 – 2010-01-08 14:45:04