public static IApplicationBuilder UseSwaggerCustom(this IApplicationBuilder app, CustsomSwaggerOptions options)
 {
     app
     .UseSwaggerCustomAuth(options)
     .UseSwagger(opt =>
     {
         if (options.UseSwaggerAction == null) return;
         options.UseSwaggerAction(opt);
     })
     .UseSwaggerUI(c =>
     {
         c.RoutePrefix = options.RoutePrefix;
         c.DocumentTitle = options.ProjectName;
         if (options.UseCustomIndex)
         {
             c.UseCustomSwaggerIndex();
         }
         if (options.SwaggerAuthList.Count > 0)
         {
             c.ConfigObject["customAuth"] = true;
             c.ConfigObject["loginUrl"] = $"/{options.RoutePrefix}/login.html";
             c.ConfigObject["logoutUrl"] = $"/{options.RoutePrefix}/logout";
         }
         if (options.ApiVersions == null) return;// options.ApiVersions = new string[] { "v1" };
         foreach (var item in options.ApiVersions)
         {
             c.SwaggerEndpoint($"/swagger/{item}/swagger.json", $"{item}");
         }
         options.UseSwaggerUIAction?.Invoke(c);
     });
     return app;
 }