Exemples d'utilisation de la réflexion en c#

Tags : reflection, reflexion

Categories: C#

A - Obtenir les valeurs des propriétés d'une classe (avec un type inconnu)

Dans cet exemple nous allons etre capable de lire les valeurs d'une propriété passée en parametre. Dans une liste de type inconnu.

public static void GetProperties<T>(List<T> result, string property)
 
{
 
foreach (var item in result)
 
{
 
PropertyInfo[] properties = item.GetType().GetProperties();
 
var propInfoObj = properties.Where(p => p.Name.ToLower() == property.ToLower()).FirstOrDefault();
 
object propValue = item.GetType().InvokeMember(propInfoObj.Name, BindingFlags.GetProperty, null, item, null);
 
}
 
}

B - Remplir une DropDownList avec les propriétés d'une classe de type static

FieldInfo[] properties = typeof(VotreClasse).GetFields();
 
var flds = properties.Where(p => p.IsStatic);
 
foreach (var item in flds)
 
{
 
ddlType.Items.Add(new ListItem() { Text = item.Name, Value = item.GetValue(null).ToString() });
 
}

Pour toute question laisser un commentaire

Aucun commentaire

Ajouter un commentaire