8000 GitHub - Coflys/swagdoc: 基于swagger自动生成word文档
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

基于swagger自动生成word文档

Notifications You must be signed in to change notification settings

Coflys/swagdoc

 
 

Repository files navigation

swagdoc

基于swagger自动生成word文档

//注入AddSwaggerGen服务 public void ConfigureServices(IServiceCollection services) { services.AddControllers(); services.AddSwaggerGen(c => { c.SwaggerDoc("v1", new OpenApiInfo { Title = "生成api文档", Version = "v1", Description = "api文档", Contact = new OpenApiContact { Name = "Contact", Url = new Uri("http://test.com") }, TermsOfService = new Uri("http://tempuri.org/terms") } ); }); }

   //添加UseSwaggerUI中间件
    public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
    {
        if (env.IsDevelopment())
        {
            app.UseDeveloperExceptionPage();
        }

        app.UseRouting();

        app.UseAuthorization();

        app.UseEndpoints(endpoints =>
        {
            endpoints.MapControllers();
            endpoints.MapSwagger("swagger/{documentName}/swagger.json");
        });

        app.UseSwaggerUI(c =>
        {
            c.RoutePrefix = ""; // serve the UI at root
            c.SwaggerEndpoint("swagger/v1/swagger.json", "V1 Docs");
        });

    }
    
   //Controller 生成word文档
      public ISwaggerProvider SwaggerGenerator { get; }
    public IOptions<SpireDocHelper> SpireDocHelper { get; }
    public WeatherForecastController(ISwaggerProvider SwaggerGenerator, IOptions<SpireDocHelper> SpireDocHelper)
    {
        this.SwaggerGenerator = SwaggerGenerator;
        this.SpireDocHelper = SpireDocHelper;
       
    }
    /// <summary>
    /// 获取
    /// </summary>
    /// <returns>返回车</returns>
    [HttpGet("/GetSwDoc")]
    public IActionResult GetSwDoc()
    {
        var document = SwaggerGenerator.GetSwagger("v1");
        string memi = string.Empty;
        var stream = SpireDocHelper.Value.GetSwDoc(document, out memi);
        return File(stream, memi, "api简化文档");
    }

    /// <summary>
    /// 获取
    /// </summary>
    /// <returns>返回车</returns>
    [HttpGet("/GetSwDocByPath")]
    public IActionResult GetSwDocByPath()
    {
        var document = SwaggerGenerator.GetSwagger("v1");
        string memi = string.Empty;
         var stream = new SpireDocHelper().GetSwDoc(document, out memi, $"Templates\\SwaggerDoc.cshtml");
         return File(stream, memi, "api简化文档");
    }

About

基于swagger自动生成word文档

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C# 100.0%
0