Метод, который вы используете, произошел от classObject
, но: classObject
имеет неправильное название - это на самом деле тип объекта (см .: .GetType()
).Вы хотите экземпляр , а не тип;Итак:
PropertyInfo prop = db.GetType().GetProperty(myClass);
object classObject = prop.GetValue(db);
var classObjectMethod = classObject.GetType().GetMethods().Last(x=>x.Name=="Find");
var record = classObjectMethod.Invoke(classObject, new object[] { new object[] {"string"} });
Важным моментом здесь является то, что я переместил .GetType()
, так что classObject
остается целевым экземпляром.