我正在写
/// <summary>
/// someMethod
/// </summary>
/// <param name="name">name</param>
/// <response code="200" cref="APIResult">Success</response>
/// <returns></returns>
[HttpGet("someMethod")]
[ProducesResponseType(typeof(APIResult), 200)]
public APIResult someMethod(string name)
{
return new APIResult();
}
但是我无法大肆获取 APIResult 结构
我必须做什么?
我使用.net core 2.1
库 NSwag.AspNetCore 版本=12.3.1
因为是通过注释,而不是通过注释:
[ProducesResponseType(typeof(APIResult), 200)]
public async Task<APIResult> get()
{
}
swagger 读取模型你想要暴露的内容
更新:好的,抱歉。我没有读完所有内容。
请尝试添加此内容:
[Produces("application/json")]
您需要使用以下内容,您的返回类型错误
public async Task<ActionResult>
然后
return Ok<object>;
检查
APIResult
类的定义,并确保其字段被定义为属性。所以如果你的班级看起来像这样:
public class APIResult
{
public string CustomProperty;
}
尝试将其更改为:
public class APIResult
{
public string CustomProperty { get; set; }
}
类变量,即使是公共变量,也不会通过 Swagger 公开。因此,如果您想公开它们,则必须通过至少添加
get
关键字来使它们成为属性。