J'ai besoin d'obtenir une liste de propriétés d'une classe. T
- GetProperty<Foo>()
. J'ai essayé le code suivant mais il échoue.
Exemple de classe :
public class Foo {
public int PropA { get; set; }
public string PropB { get; set; }
}
J'ai essayé le code suivant :
public List<string> GetProperty<T>() where T : class {
List<string> propList = new List<string>();
// get all public static properties of MyClass type
PropertyInfo[] propertyInfos;
propertyInfos = typeof(T).GetProperties(BindingFlags.Public |
BindingFlags.Static);
// sort properties by name
Array.Sort(propertyInfos,
delegate (PropertyInfo propertyInfo1,PropertyInfo propertyInfo2) { return propertyInfo1.Name.CompareTo(propertyInfo2.Name); });
// write property names
foreach (PropertyInfo propertyInfo in propertyInfos) {
propList.Add(propertyInfo.Name);
}
return propList;
}
J'ai besoin d'obtenir la liste des noms de propriétés
Sortie attendue : GetProperty<Foo>()
new List<string>() {
"PropA",
"PropB"
}
J'ai essayé beaucoup de références de stackoverlow, mais je n'arrive pas à obtenir le résultat attendu.
Référence :
Veuillez m'aider.