Establecer una propiedad por reflexión con un valor de cadena

Me gustaría establecer una propiedad de un objeto a través de Reflexión, con un valor de tipostring. Entonces, por ejemplo, supongamos que tengo unShip clase, con una propiedad deLatitude, el cual es undouble.

Esto es lo que me gustaría hacer:

Ship ship = new Ship();
string value = "5.5";
PropertyInfo propertyInfo = ship.GetType().GetProperty("Latitude");
propertyInfo.SetValue(ship, value, null);

Como está, esto arroja unaArgumentException:

El objeto de tipo 'System.String' no se puede convertir al tipo 'System.Double'.

¿Cómo puedo convertir valor al tipo adecuado, basado enpropertyInfo?

Respuestas a la pregunta(11)

Su respuesta a la pregunta