public static string ExportController(IEnumerable <Type> controllers, APIConfig config, string swaggerTitle) { var settings = new AssemblyTypeToSwaggerGeneratorSettings(); // dll路径 settings.ApiSetting = new WebApiToSwaggerGeneratorSettings { Title = swaggerTitle, // action方法名提取 ActionPathRegex = config.ActionPathRegex, // 控制器类名提取 ControllerPathRegex = config.ControllerPathRegex, // 命名空间提取到module NameSpacePathRegex = config.NameSpacePathRegex, // 解析时是否忽略 SwaggerIgnoreAttribute = config.SwaggerIgnoreAttribute, // verb属性: post,get,put等 VerbAttribute = config.VerbAttribute, // 根据此参数的属性是否存在, 值判断参数是否可选 RequiredParemeterAttribute = config.RequiredParemeterAttribute }; var generator = new WebApiToSwaggerGenerator(settings.ApiSetting); var doc = generator.GenerateForControllers(controllers); return(doc.ToJson()); }
private static string[] GetAllReferencePaths(AssemblyTypeToSwaggerGeneratorSettings settings) { return(new[] { Path.GetDirectoryName(PathUtilities.MakeAbsolutePath(settings.AssemblyPath, Directory.GetCurrentDirectory())) } .Concat(settings.ReferencePaths) .Distinct() .ToArray()); }
/// <summary>Initializes a new instance of the <see cref="AssemblyTypeToSwaggerGeneratorBase"/> class.</summary> /// <param name="settings">The settings.</param> protected AssemblyTypeToSwaggerGeneratorBase(AssemblyTypeToSwaggerGeneratorSettings settings) { Settings = settings; }
public AssemblyTypeToSwaggerCommandBase() { Settings = new AssemblyTypeToSwaggerGeneratorSettings(); ClassNames = new string[] { }; }
/// <summary>Initializes a new instance of the <see cref="AssemblyTypeToSwaggerGeneratorBase"/> class.</summary> /// <param name="settings">The settings.</param> protected AssemblyTypeToSwaggerGeneratorBase(AssemblyTypeToSwaggerGeneratorSettings settings) { Settings = settings; }
public AssemblyTypeToSwaggerCommand() { Settings = new AssemblyTypeToSwaggerGeneratorSettings(); }
/// <summary>Initializes a new instance of the <see cref="AssemblyTypeToSwaggerGenerator"/> class.</summary> /// <param name="settings">The settings.</param> public AssemblyTypeToSwaggerGenerator(AssemblyTypeToSwaggerGeneratorSettings settings) : base(settings) { }