C # ustawianie / pobieranie właściwości klasy przez nazwę łańcucha [duplikat]

To pytanie ma już tutaj odpowiedź:

Uzyskaj wartość właściwości z łańcucha za pomocą odbicia w C # 21 odpowiedzi

Próbuję ustawić wartość właściwości w klasie za pomocą łańcucha. Na przykład moja klasa ma następujące właściwości:

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

Wszystkie pola są typu łańcuchowego, więc z wyprzedzeniem wiem, że zawsze jest to łańcuch. Teraz chcę mieć możliwość ustawienia właściwości za pomocą ciągu znaków, tak jak w przypadku obiektu DataSet. Coś takiego:

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

Idealnie chciałbym po prostu przypisać zmienną, a następnie ustawić właściwość za pomocą tej nazwy łańcucha ze zmiennej

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

Czytałem o refleksji i być może jest to sposób na zrobienie tego, ale nie jestem pewien, jak to zrobić, utrzymując jednocześnie dostęp do nieruchomości w klasie. Chcę nadal móc korzystać

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

Wszelkie przykłady kodu byłyby naprawdę świetne.

questionAnswers(3)

yourAnswerToTheQuestion