如何使用Swashbuckle记录查询字符串参数?

Swashbuckle在提取C#XML注释以制作Swagger API文档方面做得非常出色。 Swagger支持记录查询字符串参数。但是如果有一种方法可以在XML中记录查询字符串参数,所以Swashbuckle会导出它们,我还没有找到它。如何使用Swashbuckle记录查询字符串参数?

我有类似:

/// <summary> 

/// List all users

/// </summary>

/// <param name="?search">String to search for in user IDs and names</param>

/// <returns>An array of users</returns>

/// <response code="200">OK</response>

[ResponseType(typeof(IEnumerable<User>))]

[Route("")]

[HttpGet]

public IHttpActionResult ListUsers()

{

IEnumerable<User> users;

// "?search=<substring>" in the URI searches for users

// Adapted from https://stackoverflow.com/questions/10656841

var searchString = Request.GetQueryNameValuePairs()

.Where(nv => nv.Key == "search")

.Select(nv => nv.Value)

.DefaultIfEmpty("")

.FirstOrDefault();

而且search输出显示不出来。我试图删除?,并没有帮助。我怀疑XML的评论并不直接支持这一点。如果那是真的,我正在寻找最佳实践方法。我正在考虑在<remarks>区块中添加几个子弹。任何更好的想法?

回答:

@jps指出我在正确的方向。谢谢!

我结束了:

/// <summary> 

/// List all users

/// </summary>

/// <param name="search">String to search for in user IDs and names</param>

/// <returns>An array of users</returns>

/// <response code="200">OK</response>

[ResponseType(typeof(IEnumerable<User>))]

[Route("")]

[HttpGet]

public IHttpActionResult ListUsers([Optional]string search)

{

IEnumerable<User> users;

var searchString = search == null ? string.Empty : search;

以上是 如何使用Swashbuckle记录查询字符串参数? 的全部内容, 来源链接: utcz.com/qa/263939.html

回到顶部