我剛剛更新了IIS服務器上的Web應用程序,但更新後,我的用戶正在收到不正確的輸入格式錯誤。這個錯誤是因爲代碼試圖將用戶的字符串輸入轉換爲double,如果用戶傳入類似55.5D的東西,這顯然不起作用。爲什麼我的IIS服務器接收到來自客戶端的錯誤輸入?
除了不良的編碼習慣,我還是要解決,這不是真正的問題。問題在於用戶發送了正確的值(我自己看過並輸入了完全相同的值),但程序仍在拋出此錯誤。我恢復到以前的版本,錯誤消失。自從以前的版本以來,我沒有更改過這段代碼。有人知道這裏發生了什麼?我無法在開發服務器上重複這個問題,也不會故意輸入錯誤的輸入。
編輯:我已經嘗試清除更新後的用戶和服務器的緩存,但仍然收到相同的錯誤,即使我把檢查區域打破(我錯過了代碼中的其他地方)。但是,當只有少數用戶同時使用它時,它運行得非常好,但是當許多用戶使用它時,它已經崩潰了。當許多用戶訪問該網站時,ASP.NET控件是否有問題?
可能是它保留在舊的DLLS上,你需要做一個應用程序池重置 – KSib
@KSib我對IIS比較陌生。這是一個預編譯的網站,我用新的網站替換它的所有文件。重置應用程序池是否清除服務器端緩存或什麼? – Crobota
它所做的一件事是回收內存中的內容,所以如果你有一些東西仍然存在,它應該釋放它。如果您注意到這是一個問題,那麼在每次部署後,我總是會回收應用程序池。 – KSib