只要在你的ConfigureServices中添加如下代码(两种方案都行)即可:
原创不易转载请注明转载地址,谢谢!
一、把枚举值改成枚举属性
//方法一
services.AddMvc(option => option.EnableEndpointRouting = false).AddJsonOptions(options =>{
options.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter());
});
//方法二
services.AddControllers().AddJsonOptions(options =>
options.JsonSerializerOptions.Converters.Add(new JsonStringEnumConverter()));
没改之前
改了之后
枚举
public enum UserType
{
/// <summary>
/// 超级管理员
/// </summary>
[Description("超级管理员")]
Administrator = 1,
/// <summary>
/// 高级管理员
/// </summary>
[Description("管理员")]
Admin = 2,
/// <summary>
/// 用户
/// </summary>
[Description("用户")]
User = 3
}
二、显示枚举描述
注意:里面的GetDescription方法时扩展方法,放在了后面
方法一:添加SwaggerEnumFilter类,继承IDocumentFilter,代码如下
using Microsoft.OpenApi.Any;
using Swashbuckle.AspNetCore.SwaggerGen;
using System;
using System.Collections.Generic;
using System.ComponentMo