Configuración de C # / obtención de las propiedades de la clase por nombre de cadena [duplicado]

Esta pregunta ya tiene una respuesta aquí:

Obtener el valor de la propiedad de la cadena mediante la reflexión en C # 21 respuestas

Lo que estoy tratando de hacer es establecer el valor de la propiedad en una clase usando una cadena. Por ejemplo, mi clase tiene las siguientes propiedades:

<code>myClass.Name
myClass.Address
myClass.PhoneNumber
myClass.FaxNumber
</code>

Todos los campos son de tipo cadena, así que sé de antemano que siempre es una cadena. Ahora quiero poder establecer las propiedades utilizando una cadena como podría hacer con el objeto DataSet. Algo como esto:

<code>myClass["Name"] = "John"
myClass["Address"] = "1112 River St., Boulder, CO"
</code>

Idealmente, solo quiero asignar una variable y luego establecer la propiedad usando ese nombre de cadena de la variable

<code>string propName = "Name"
myClass[propName] = "John"
</code>

Estaba leyendo acerca de la reflexión y tal vez sea la forma de hacerlo, pero no estoy seguro de cómo hacerlo para mantener el acceso a la propiedad intacto en la clase. Quiero seguir siendo capaz de usar

<code>myClass.Name = "John"
</code>

Cualquier ejemplo de código sería realmente genial.

Respuestas a la pregunta(3)

Su respuesta a la pregunta