为 Swagger UI 和 Swashbuckle.AspNetCore 设置 syntaxHighlight 属性

Setting syntaxHighlight property for Swagger UI with Swashbuckle.AspNetCore

我正在为一个项目使用 Swashbuckle.AspNetCore。我开始使用的版本是 5.5.1 并且在渲染具有大体(20k json 行)的结果时,速度非常合理(数据获取需要 50 毫秒,渲染花了不到一秒钟。当我升级到 5.6.x 时,语法现在突出显示(看起来不错)但将这些结果的呈现速度减慢到 20 秒以上。一旦呈现,导致刷新的页面上的任何操作都需要 20 秒,直到结果被清除。

经过通常的搜索,我想试试这个解决方案(停用syntaxHighlight)。我不确定如何通过 Swashbuckle.AspNetCore 执行此操作。有什么建议吗?

SwaggerUI({
        syntaxHighlight: {
          activated: false,
          theme: "agate"
        },
        //url: path,
        ....
      });

您好,我遇到了同样的问题,在深入研究源代码后,我发现您可以通过这种方式将其他参数传递给 ConfigObject(示例显示如何禁用语法突出显示):

app.UseSwaggerUI(c =>
{
    c.SwaggerEndpoint("/swagger/v1/swagger.json", "My API V1");
    c.RoutePrefix = string.Empty;
    c.ConfigObject.AdditionalItems.Add("syntaxHighlight", false);
});