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.
in un'altra classe faccio una ricerca tra i campi per recuperarne il valorecodice:public class User { private string _username; public string username { get { return _username; } }
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...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 }
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.

Rispondi quotando