Je veux analyser dynamiquement un arbre d'objets pour effectuer une validation personnalisée. La validation n'est pas importante en soi, 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 string)
{
string value = propertyInfo.GetValue(data, null);
if value is not OK
{
return false;
}
}
}
return true;
}
La seule partie qui m'intéresse pour le moment est "si la propriété est une chaîne". Comment puis-je savoir, à partir d'un objet PropertyInfo, de quel type il s'agit ?
Je vais devoir m'occuper des trucs de base comme les chaînes, les ints, les doubles. Mais je devrai aussi m'occuper d'objets, et si c'est le cas, je devrai parcourir l'arbre des objets plus bas dans ces objets pour valider les données de base qu'ils contiennent, ils auront aussi des chaînes de caractères, etc.