Rumah >pembangunan bahagian belakang >C++ >Bagaimana untuk Menetapkan Nilai Rentetan dengan Selamat kepada Harta Menggunakan Refleksi?
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!