private IList <ParameterMetadata> GetParametersMetadata(MethodInfo method) { var result = new List <ParameterMetadata>(); foreach (ParameterInfo parameter in method.GetParameters()) { object[] parameterAttributes = parameter.GetCustomAttributes(typeof(ParameterAttribute), false); var parameterMetadata = new ParameterMetadata { Name = GetDisplayName(parameter) }; if (parameterAttributes.Length > 0) { var attribute = (ParameterAttribute)parameterAttributes[0]; parameterMetadata.Description = attribute.Description; if (attribute is OptionalAttribute) { parameterMetadata.DefaultValue = ((OptionalAttribute)attribute).Default; } } result.Add(parameterMetadata); } return(result); }
private IList<ParameterMetadata> GetParametersMetadata(MethodInfo method) { var result = new List<ParameterMetadata>(); foreach (ParameterInfo parameter in method.GetParameters()) { object[] parameterAttributes = parameter.GetCustomAttributes(typeof(ParameterAttribute), false); var parameterMetadata = new ParameterMetadata { Name = GetDisplayName(parameter) }; if (parameterAttributes.Length > 0) { var attribute = (ParameterAttribute)parameterAttributes[0]; parameterMetadata.Description = attribute.Description; if (attribute is OptionalAttribute) { parameterMetadata.DefaultValue = ((OptionalAttribute)attribute).Default; } } result.Add(parameterMetadata); } return result; }