public static ResponseDescription CreateResponseDescription(this HttpActionDescriptor actionDescriptor) { Contract.Requires(actionDescriptor != null); var responseTypeAttribute = actionDescriptor.GetCustomAttributes <ResponseTypeAttribute>(); var responseType = responseTypeAttribute.Select(attribute => attribute.ResponseType).FirstOrDefault(); return(new ResponseDescription { DeclaredType = actionDescriptor.ReturnType, ResponseType = responseType, Documentation = actionDescriptor.GetApiResponseDocumentation() }); }