2009-10-25 72 views
0

我們在保存頁面時遇到了問題。它會拋出「輸入字符串格式不正確」。在嘗試了這麼多次之後,我們發現代碼沒有問題,但是使用了「緩存(Temporary Internet File)」。高速緩存被清除後,它保存沒有任何錯誤。有人知道背後的原因嗎?輸入字符串在asp.net中格式不正確

+1

發佈您的代碼,您將有更好的機會獲得答案。 – pmarflee 2009-10-25 12:06:45

+0

是的,我會說pmarflee說同樣的東西 – 2009-10-25 12:24:26

+0

我敢肯定在代碼中沒有錯誤。因爲它適用於所有其他電腦。清除拋出「輸入字符串錯誤」的緩存後,它在同一臺計算機上工作。 – superachu 2009-10-25 14:56:30

回答

0

這聽起來像是你從一個糟糕的解析中得到的那種錯誤,比如Int32.Parse("foo"),你期待"foo"就像"123"。我不確定爲什麼這會受到緩存的影響。

我的建議是用在什麼地方發生異常的方法,看看它是否試圖解析字符串。如果您預計該字符串可能不是正確的格式(比如,它是由用戶輸入的字符串,可以替代

int i = Int32.Parse(myString); 

int i; 
if (Int32.TryParse(myString, out i)) 

然後你就可以處理的不好的情況下,在else輸入。

然而,如果你期望的字符串應始終以正確的格式(換句話說,這是真正的「例外」的行爲),那麼我會離開它作爲一個Parse並添加一個catch (FormatException ex)和在內記錄導致異常的字符串。這應該有助於你追蹤問題的根本原因。

,或者自您清除緩存早在'09十月的問題一直沒有reoccured,只是記在宇宙射線,繼續前進,我猜。 ;)

+0

當然這只是一個猜測;沒有看到你的代碼很難確定。但是,這個問題目前是Google [ASP.Net輸入字符串格式不正確]的最高結果之一,我認爲它應該有一個答案,即使原始提問者很久以前就已經移動了。 – 2011-03-03 18:05:33