private SwaggerParameterData CreateSwaggerParameterData(ParameterInfo pi) { var parameter = new SwaggerParameterData { Name = pi.Name, ParameterModel = pi.ParameterType }; var paramAttrs = pi.GetCustomAttributes <RouteParamAttribute>(); if (!paramAttrs.Any()) { parameter.Description = "Warning: no annotation found for this parameter"; parameter.ParamType = ParameterType.Query; // Required, so use query as fallback return(parameter); } foreach (var attr in paramAttrs) { parameter.Name = attr.Name ?? parameter.Name; parameter.ParamType = attr.GetNullableParamType() ?? parameter.ParamType; parameter.Required = attr.GetNullableRequired() ?? parameter.Required; parameter.Description = attr.Description ?? parameter.Description; } return(parameter); }
private SwaggerParameterData CreateSwaggerParameterData(ParameterInfo pi) { var parameter = new SwaggerParameterData { Name = pi.Name, ParameterModel = pi.ParameterType }; var paramAttrs = pi.GetCustomAttributes<RouteParamAttribute>(); if (!paramAttrs.Any()) { parameter.Description = "Warning: no annotation found for this parameter"; parameter.ParamType = ParameterType.Query; // Required, so use query as fallback return parameter; } foreach (var attr in paramAttrs) { parameter.Name = attr.Name ?? parameter.Name; parameter.ParamType = attr.GetNullableParamType() ?? parameter.ParamType; parameter.Required = attr.GetNullableRequired() ?? parameter.Required; parameter.Description = attr.Description ?? parameter.Description; } return parameter; }