Chcę dynamicznie analizować drzewo obiektów, aby przeprowadzić niestandardową weryfikację. Walidacja nie jest ważna jako taka, ale chcę lepiej zrozumieć klasę PropertyInfo.
Będę robić coś takiego,
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;
}
Naprawdę jedyną rzeczą, na której mi zależy w tej chwili, jest „jeśli właściwość jest łańcuchem”. Jak mogę dowiedzieć się z obiektu PropertyInfo, jaki to jest typ.
Będę musiał poradzić sobie z podstawowymi rzeczami, takimi jak stringi, ints, double. Ale będę musiał również zajmować się obiektami, a jeśli tak, będę musiał przejść drzewo obiektów dalej w tych obiektach, aby zweryfikować podstawowe dane w nich zawarte, będą one również miały łańcuchy itp.
Dzięki.