Mengapa Boolean.ToString() Mengembalikan "True" dan Bukan "true"
Kaedah Boolean.ToString() dalam .NET mengembalikan sama ada "Benar" atau "Salah" berdasarkan nilai objek Boolean. Sebab penggunaan huruf besar ini tidak jelas dan telah menjadi subjek spekulasi selama bertahun-tahun.
Penjelasan MSDN
Menurut MSDN, Boolean.ToString() mengembalikan pemalar " True" atau "False" dan bukannya medan TrueString atau FalseString. Ini kerana XML adalah sensitif huruf besar dan kecil dan spesifikasi XML mengiktiraf "benar" dan "palsu" sebagai nilai Boolean yang sah. MSDN mencadangkan untuk menukar rentetan yang dikembalikan kepada huruf kecil menggunakan kaedah String.ToLower() sebelum menulisnya ke fail XML.
Hacky Solutions
Disebabkan penggunaan huruf besar ini, terdapat mungkin senario di mana nilai yang dikembalikan tidak serasi dengan konteks sensitif huruf kecil. Satu penyelesaian yang meretas kepada isu ini ialah mencipta kaedah sambungan yang menukar nilai Boolean kepada huruf kecil untuk kes penggunaan tertentu, seperti XML. Contohnya:
internal static string ToXmlString(this bool b) { return b.ToString().ToLower(); }
Kaedah ini menambah fungsi baharu pada tindanan tetapi menghapuskan keperluan untuk menukar rentetan secara manual kepada huruf kecil di berbilang tempat.
Kaedah Alternatif
Kaedah Boolean.ToString(IFormatProvider) juga wujud, tetapi bahagian Catatannya menyatakan bahawa Parameter IFormatProvider tidak mengambil bahagian dalam pelaksanaan kaedah dan tidak menggambarkan tetapan khusus budaya. Oleh itu, kaedah alternatif ini tidak menyediakan sebarang pilihan penyesuaian.
Atas ialah kandungan terperinci Mengapakah `Boolean.ToString()` Mengembalikan 'Benar' dan 'Salah' Daripada 'benar' dan 'salah'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!