基本信息
源码名称:asp.net core 多版本webapi示例源码(v1/v2)Swagger UI
源码大小:0.67M
文件格式:.zip
开发语言:C#
更新时间:2018-09-02
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):78630559

本次赞助数额为: 2 元 
   源码介绍
asp.net core webapi多版本示例,Swagger UI实现


using MicroServiceCategory.API.Services;
using MicroServiceCategory.API.Services.Interfaces;
using Microsoft.AspNetCore.Builder;
using Microsoft.AspNetCore.Hosting;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Swashbuckle.AspNetCore.Swagger;
using System.IO;

namespace MicroServiceCategory.API
{
    public class Startup
    {
        public Startup(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }
        
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            //Habilitando a geração da documentação do Swagger
            services.AddSwaggerGen(c =>
            {
                c.SwaggerDoc("category-v1", new Info { Title = "Category API V1", Version = "v1" });
                c.SwaggerDoc("category-v2", new Info { Title = "Category API V2", Version = "v2" });

                var filePath = Path.Combine(System.AppContext.BaseDirectory, "MicroServiceCategory.API.xml");
                c.IncludeXmlComments(filePath);
            });

            services.AddScoped<ICategoryService, CategoryService>();
        }
        
        public void Configure(IApplicationBuilder app, IHostingEnvironment env)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseMvc();

            //Habilitando a geração das páginas de UI do Swagger
            app.UseSwagger();
            app.UseSwaggerUI(c =>
            {
                c.SwaggerEndpoint("/swagger/category-v1/swagger.json", "Category API V1");
                c.SwaggerEndpoint("/swagger/category-v2/swagger.json", "Category API V2");
            });

            app.UseWelcomePage("/");
        }
    }
}