public static FieldAndObjectInfo GetFieldInfo(string property, object o)
{
var props = property.Split('.');
string finalProp = props[props.Length - 1];
FieldInfo pi = null;
object lastObj = o;
FieldAndObjectInfo fao = new FieldAndObjectInfo() { };
foreach (var prop in props)
{
try
{
var pr = lastObj.GetType().GetMember(prop);
if (prop == finalProp)
{
fao.Fields.Add(pr[0]);
fao.Objects.Add(lastObj);
return fao;
}
fao.Fields.Add(pr[0]);
fao.Objects.Add(lastObj);
lastObj = pr[0].GetValue(lastObj);
}
catch
{
return null;
}
}
return fao;
}
public static FieldAndObjectInfo GetStaticFieldInfo(string property)