Swagger не генерирует модель для объекта, обернутого IActionResult - PullRequest
0 голосов
/ 01 ноября 2018

С помощью следующего кода Swaggger UI отображает модель RegistrationInfo, но не модель UserInfo.

Как мне заставить это генерировать?

[Produces("application/json")]
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
[Route("api")]

public class UserController : Controller
{

    [HttpPost("RegisterUser")]
    public  IActionResult RegisterUser([FromBody] RegistrationInfo info)
    {
        UserInfo data =    UserData.RegisterUser(info);
        if (data != null)
        {
            return Ok(data);
        }
        return NoContent();
    }
}

1 Ответ

0 голосов
/ 01 ноября 2018

Вам необходимо использовать атрибут ProducesResponseType. Измените свой контроллер на это:

[Produces("application/json")]
[Authorize(AuthenticationSchemes = JwtBearerDefaults.AuthenticationScheme)]
[Route("api")]
public class UserController : Controller
{
    [ProducesResponseType(typeof(UserInfo), StatusCodes.Status200OK)]
    [HttpPost("RegisterUser")]
    public IActionResult RegisterUser([FromBody] RegistrationInfo info)
    {
        UserInfo data = UserData.RegisterUser(info);
        if (data != null)
        {
            return Ok(data);
        }

        return NoContent();
    }
}

Подробнее здесь .

Надеюсь, это поможет!

...