Salve a tutti,
come da titolo :

ho una classe User con un campo username dichiarato come private.
Ho dichiarato un metodo get username per recuperarne il valore.
codice:
public class User     
{ 
   private string _username;             
   public string username             
           { get { return _username; } }
in un'altra classe faccio una ricerca tra i campi per recuperarne il valore


codice:
FieldInfo[] fields = data.GetType().GetFields(BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);
            foreach (FieldInfo f in fields)
{
 if (f.Name == MIONOMECAMPO )
 // RECUPERO IL VALORE DEL CAMPO 
}
lo faccio perchè il codice è parte di una classe generica che fa delle operazioni su file in cui il tipo record non è fissato...nel mio caso è di tipo User...


Il problema è che il codice funziona solo se

MIONOMECAMPO è una stringa uguale a "_username"

cioè il nome del campo privato.

ma io non voglio questo..altrimenti a che serve averlo privato se posso accedervi così ...tramite il nome..

voglio invece accedere lo renderei publico
MIONOMECAMPO ="username"

e' possibile farlo? come faccio a recuperare il valore di username...cioè di ?
_username ..
spero di essere statao chiaro e che le informazioni siano sufficienti.

grazie.