Tetapkan nilai rentetan atribut menggunakan pantulan
Apabila menetapkan sifat menggunakan pantulan, anda mungkin menghadapi ArgumentException kerana jenis tidak sepadan. Untuk menyelesaikan isu ini, pertimbangkan perkara berikut:
Kaedah 1: Convert.ChangeType()
Kaedah ini membenarkan penukaran antara jenis yang serasi pada masa jalan. Untuk jenis bukan Iconvertible, logik kes khas mungkin diperlukan.
Contoh kod:
<code class="language-csharp">Ship ship = new Ship(); string value = "5.5"; PropertyInfo propertyInfo = ship.GetType().GetProperty("Latitude"); propertyInfo.SetValue(ship, Convert.ChangeType(value, propertyInfo.PropertyType), null);</code>
Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Nilai Rentetan dengan Selamat kepada Harta Menggunakan Refleksi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!