2012-07-19 41 views
0

這是一個.NET錯誤:需要深入瞭解這種新錯誤的含義?

Error Message: String was not recognized as a valid Boolean. 
Error Source : mscorlib 

這可能是一個有點神祕的冠冕堂皇,但是這就是我必須展示。如何回顧所發生的事情...我真的需要幫助,如果它沒有出現過,它怎麼會出現,雖然應用程序是相同的。 謝謝

+2

C#的哪一行是失敗的?你當時正在執行什麼操作?不可能知道這個錯誤信息,也不知道可能發生的情況。 – 2012-07-19 19:52:20

+2

我不相信這就是你必須展示的。你不能至少將它追溯到代碼的崩潰行嗎? – 2012-07-19 19:52:48

+0

應用程序是相同的,但數據可能有所不同:它用於說「真」或「假」的地方,現在說的是其他內容。 – dasblinkenlight 2012-07-19 19:52:50

回答

8

使用bool.Parse()時發生此錯誤,並且該方法的輸入不能轉換爲布爾值true/false。

例如:

string testBool = "true"; 
bool validBool = bool.Parse(testBool); 
// this passes fine 

testBool = "asdf"; 
validBool = bool.Parse(testBool); 
// Exception: String was not recognized as a valid Boolean. 

如果你使用.NET 4.0或更高版本,可以使用bool.TryParse()代替;如果它收到無效輸入,它不會拋出異常。否則,將該語句包裝在try/catch中以使用它。

+1

非常好的答案+1 – 2012-07-19 19:55:46