public void GetData(string requested) { if (Gatherer == null) { OnGetData(requested); } else { PropertyInfo[] properties = Gatherer.GetType().GetProperties(); foreach (PropertyInfo property in properties) { if (property.Name == requested) { MethodInfo get = property.GetGetMethod(); get.Invoke(Gatherer, new object[] { }); } } } }