我有一个使用 NSwag 生成其 Swagger Json 的 .Net Core v2.1 Web API。
我有一个这样的响应模型-
public class LoginResponse
{
public LoginResult LoginResult { get; set; }
}
public enum LoginResult
{
AwaitingEmailConfirmation = 0,
Locked = 1,
Failed = 2,
Success = 3
}
生成的 Swagger JSON -
"definitions":{
"LoginResponse":{
"type":"object",
"additionalProperties":false,
"required":[
"loginResult"
],
"properties":{
"loginResult":{
"$ref":"#/definitions/LoginResult"
}
}
},
"LoginResult":{
"type":"integer",
"description":"",
"x-enumNames":[
"AwaitingEmailConfirmation",
"Locked",
"Failed",
"Success"
],
"enum":[
0,
1,
2,
3
]
},
当在 JSON 上运行 swagger codegen 时,我在 C# 的 IO.Swagger 项目中得到以下 LoginResult 模型(选择了 targetFramework 5.0) -
[JsonConverter(typeof(StringEnumConverter))]
public enum LoginResult
{
/// <summary>
/// Enum _0 for value: 0
/// </summary>
[EnumMember(Value = "0")]
_0 = 1,
/// <summary>
/// Enum _1 for value: 1
/// </summary>
[EnumMember(Value = "1")]
_1 = 2,
/// <summary>
/// Enum _2 for value: 2
/// </summary>
[EnumMember(Value = "2")]
_2 = 3,
/// <summary>
/// Enum _3 for value: 3
/// </summary>
[EnumMember(Value = "3")]
_3 = 4
}
}
有人可以帮助描述我如何让枚举生成与使用 swagger-codegen 的 IO.Swagger 生成的客户端代码中的原始 LoginResult 模型具有相同的名称等吗?