public ReflectedActionDescriptor(MethodInfo methodInfo, string actionName, ControllerDescriptor controllerDescriptor)
        {
            this.methodInfo = methodInfo;

            this.actionName = actionName;

            this.controllerDescriptor = controllerDescriptor;

            ParameterInfo[] parameterInfoArray = Reflector.GetParameters(methodInfo);

            List<ReflectedParameterDescriptor> parameterDescriptorList = new List<ReflectedParameterDescriptor>();

            if (parameterInfoArray != null)
            {
                for (int parameterIndex = 0; parameterIndex < parameterInfoArray.Length; parameterIndex++)
                {
                    ReflectedParameterDescriptor parameterDescriptor = new ReflectedParameterDescriptor(parameterInfoArray[parameterIndex]);

                    parameterDescriptorList.Add(parameterDescriptor);
                }
            }

            this.parameterDescriptorArray = parameterDescriptorList.ToArray();
        }
        public ReflectedActionDescriptor(MethodInfo methodInfo, string actionName, ControllerDescriptor controllerDescriptor)
        {
            this.methodInfo = methodInfo;

            this.actionName = actionName;

            this.controllerDescriptor = controllerDescriptor;

            ParameterInfo[] parameterInfoArray = Reflector.GetParameters(methodInfo);

            List <ReflectedParameterDescriptor> parameterDescriptorList = new List <ReflectedParameterDescriptor>();

            if (parameterInfoArray != null)
            {
                for (int parameterIndex = 0; parameterIndex < parameterInfoArray.Length; parameterIndex++)
                {
                    ReflectedParameterDescriptor parameterDescriptor = new ReflectedParameterDescriptor(parameterInfoArray[parameterIndex]);

                    parameterDescriptorList.Add(parameterDescriptor);
                }
            }

            this.parameterDescriptorArray = parameterDescriptorList.ToArray();
        }