Utilisation de PropertyInfo pour connaître le type de propriété

Je veux parsingr dynamicment une arborescence d’objects pour effectuer une validation personnalisée. La validation n’est pas importante en tant que telle, mais je veux mieux comprendre la classe PropertyInfo.

Je vais faire quelque chose comme ça,

public bool ValidateData(object data) { foreach (PropertyInfo propertyInfo in data.GetType().GetProperties()) { if (the property is a ssortingng) { ssortingng value = propertyInfo.GetValue(data, null); if value is not OK { return false; } } } return true; } 

En réalité, la seule chose qui m’intéresse actuellement est «si la propriété est une chaîne». Comment puis-je savoir à partir d’un object PropertyInfo quel type il est?

Je vais devoir gérer des choses basiques comme des cordes, des ints, des doubles. Mais je devrai aussi traiter des objects, et si c’est le cas, je devrai parcourir l’arborescence d’objects plus bas à l’intérieur de ces objects pour valider les données de base qu’ils contiennent, ils auront également des chaînes, etc.

Merci.

Utilisez PropertyInfo.PropertyType pour obtenir le type de la propriété.

 public bool ValidateData(object data) { foreach (PropertyInfo propertyInfo in data.GetType().GetProperties()) { if (propertyInfo.PropertyType == typeof(ssortingng)) { ssortingng value = propertyInfo.GetValue(data, null); if value is not OK { return false; } } } return true; }