Snippet: Ricavare il valore di una variabile in base al nome

Una delle domande che ogni tanto ricorrono nel NG di VB.NET è come ricavare il valore di una variabile conoscendo il nome. Supponendo di essere all’interno di una form ecco una soluzione al problema basata sulla Reflection:

Public Variabile As String = “Valore”

MsgBox(GetValueByName(“Variabile”))

Public Function GetValueByName(ByVal name as String) As String
          Dim field As System.Reflection.FieldInfo
          field = Me.GetType.GetField(name)
          Return field.GetValue(Me).ToString()
End Function

Il metodo è estendibile comunque anche ad altri scenari.