如何在Swashbuckle文档中添加换行符?

Att*_*asz 11 line-breaks asp.net-web-api swagger swagger-ui swashbuckle

我正在使用swagger/swashbuckle为Web Api 2中实现的api生成文档.

唯一识别的xml文档标签是<summary>,<remarks><param>.
这意味着我无法使用<para>标记在新行或段落中格式化我的文本,所有内容都在文档的Implementation Notes条目中生成为连续的长段落.

有没有办法做到这一点?

Att*_*asz 17

我发现你可以<br />在评论中添加标签来实现这一目标.
添加:

/// <br /> 
Run Code Online (Sandbox Code Playgroud)

将导致生成的文档中的换行符.


MiF*_*vil 6

在 SwashBuckle.AspNetCore<br />&lt;br /&gtgithub 中建议)中不起作用。您可以在行<remarks>尾指定反斜杠。

例如

/// <remarks>
///  before. \
///  after.  
/// </remarks>
Run Code Online (Sandbox Code Playgroud)

生成 2 行

before.
after.
Run Code Online (Sandbox Code Playgroud)

但是我无法在<summary>部分中生成多行。

注意,如果该行有尾随空格(例如"before. \ "),反斜杠将在输出中按字面显示。您可以在https://github.com/MNF/Samples/blob/master/SwashbuckleExample/SwashbuckleExample/Controllers/SwashBuckleTest.cs中看到我的一些尝试


小智 5

实现的另一种方法是创建自定义OperationFilter并使用xml文档标签,如中所述:

https://github.com/domaindrivendev/Swashbuckle/issues/258

希望这可以帮助

山姆


nPc*_*omp 5

已发布的解决方案均不适用于较新版本的 Swagger。如果您希望注释行之间有换行符分隔,则必须添加///换行符。这使得方法注释变得冗长,但它们在 Swagger 文档中将更具可读性。

///  <summary>
/// Comment Line 1
///  
/// Comment Line 2
///  
/// Comment Line 3
///  </summary>
Run Code Online (Sandbox Code Playgroud)