что-то в этом духе должно помочь вам начать
for (methods in controller)
typeof(ActionResult).IsAssignableFrom(methodInfo.ReturnType)
это псевдо, не уверен, что это правильные свойства, а что нет ... единственное, что вам нужно быть осторожным, это получить методы только для объявленного типа, а не для базовых типов.
typeof(Controller).GetMethods(
BindingFlags.Instance |
BindingFlags.DeclaredOnly |
BindingFlags.Public)
Надеюсь, этого достаточно, чтобы быть опасным и начать.