Boolean.ToString 輸出中的大小寫差異
在.NET 中,Boolean.ToString() 方法將布林值轉換為字元串,對於true 傳回“True”,對於false 傳回“False”。這種大小寫區別引起了問題,特別是在與 XML 或 C# 的 true/false 關鍵字的兼容性至關重要的情況下。
MSDN 的解釋
根據 MSDN,Boolean.ToString( ) 傳回常數“True”或“False”,而不是欄位 TrueString 或 FalseString。此方法不區分大小寫,與 XML 不同,XML 需要「true」和「false」作為布林值。
意外行為
儘管文件宣告 XML需要小寫布林值,ToString() 方法傳回大寫值。此行為可能會導致相容性問題,並且需要在 XML 應用程式中使用 ToLower() 等方法進行手動轉換。
底層實作
更令人困惑的是,Boolean.ToString( IFormatProvider)也表現出特殊的行為。提供者參數是保留的,對方法的執行沒有影響,儘管在其他依賴提供者的方法中是常見做法,但它本質上毫無用處。
解
這種差異的解決取決於具體情況。但是,它通常涉及部署解決方法,例如更新部分中提供的自訂 ToXmlString() 方法,該方法在傳回用於 XML 使用的字串之前將布林值轉換為小寫。
以上是為什麼 .NET 的 `Boolean.ToString()` 會傳回大寫的「True」和「False」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!