当&符号位于代码标记内时,它在WEB API文档的swagger UI中无法正确表示

zbdgwd5y  于 2022-11-06  发布在  其他
关注(0)|答案(1)|浏览(134)

我正在尝试使用“Swashbuckle.AspNetCore”Version=“4.0.1”通过XML注解向API端点添加注解。
问题出在程式码标记区块内的&符号。它们未正确呈现,或根本未呈现注解。
我试过用&和unicode特定的表示来替换&,但是它们在UI中仍然呈现为&。我也试过将它 Package 进来。如果我只留下&,注解根本不会呈现,因为它在XML注解中无效。

/// <summary>
    /// Gets all entries
    /// </summary>
    /// <remarks>
    /// Sample request:
    /// ```
    ///     GET <![CDATA[ /api/entries/1?month=5&day=2 ]]>
    /// ```
    /// </remarks>
    [HttpGet("/all")]
    public IActionResult Get(int month, int day)
    {
        return Ok();
    }

而不是看到
样品请求:

GET  /api/entries/1?month=5&amp;day=2

我想看看
样品请求:

GET  /api/entries/1?month=5&day=2
hrirmatl

hrirmatl1#

2022,而且我还遇到了XML文档不以swagger显示的问题,因为使用了“与”(&)。Visual Studio 2022智能感知显示:
XML注解的XML格式不正确--引用了未定义的实体。
我的解决方案是将XML中的所有&替换为&amp;。使用上面的示例,尝试使用:

/// GET  /api/entries/1?month=5`&amp;`day=2

而不是:

/// GET  /api/entries/1?month=5`&`day=2

相关问题