Ich möchte eine Eigenschaft eines Objekts über Reflection mit einem Wert vom Typ festlegen string
. Nehmen wir zum Beispiel an, ich habe eine Ship
Klasse mit der Eigenschaft Latitude
a double
.
Folgendes möchte ich tun:
Ship ship = new Ship();
string value = "5.5";
PropertyInfo propertyInfo = ship.GetType().GetProperty("Latitude");
propertyInfo.SetValue(ship, value, null);
Wie es ist, wirft dies ein ArgumentException
:
Objekt vom Typ 'System.String' kann nicht in Typ 'System.Double' konvertiert werden.
Wie kann ich den Wert basierend auf dem richtigen Typ konvertieren propertyInfo
?