Exemple #1
0
        IEnumerable <MethodInfo> GetCanonicalActionMethods()
        {
            bool controllerIsDisposable = typeof(IDisposable).IsAssignableFrom(this.Type);

            return
                (from m in this.Type.GetMethods(BindingFlags.Public | BindingFlags.Instance)
                 where MvcControllerInfo.IsMvcController(m.DeclaringType) &&
                 ActionInfo.IsCallableActionMethod(m) &&
                 !IsNonAction(m) &&
                 !(controllerIsDisposable && m.Name == "Dispose" && m.ReturnType == typeof(void) && m.GetParameters().Length == 0)
                 select m);
        }