c# - 如何在 SwashBuckle.ASP.NET Core 库中显示外部库程序集提供的端点的 XML 注释
问题描述
我有一个为它自己的端点提供服务的 ASP.NET Core 应用程序。我也有端点来管理由内部 nuget 包提供的基本应用程序功能(即检查机器名称是什么以及它是在本地运行还是在远程机器上运行的健康端点)。我目前正在使用Swashbuckle.AspNetCore来提供 API 文档。在我的StartUp
文件中,我目前能够在我的 Web 项目的程序集中包含 XML 注释,如下所示:
services.AddSwaggerGen(gen =>
{
gen.IncludeXmlComments(
filePath: Path.Combine(AppContext.BaseDirectory, Assembly.GetEntryAssembly()!.GetName().Name + ".xml"),
includeControllerXmlComments: true
);
});
但是,这不会为我的 Web 项目使用的其他库提供的路由提供 XML 注释。这些端点仍然在我的 api 文档中(我想要),但理想情况下我也有 xml 注释。关于如何实现这一目标的任何想法?
解决方案
我为我的项目创建了一个扩展方法,它将提取 XML 文件并将其加载到此处的 Swagger中。您还需要确保您的 .NET Core 项目正在生成 XML 文件。去检查; 右键单击您的项目,然后Properties
-> Build
,然后Output
确保已设置 XML 文档文件位置。
推荐阅读
- c++ - make 命令返回错误:使用 open-opcua 构建 libOpenOpcUaSharedlib.so 时使用不完整类型无效
- python - 当特定用户在频道中发送消息时,如何让我的不和谐机器人做出响应?
- laravel - Origin 标头在 L5 Swagger 中不起作用 - Laravel
- html - 如何根据断点将 HTML 元素重新定位到层次结构的不同部分?
- django-views - 想在Django中将数据保存到数据库后删除excel数据
- c++ - vscode中如何处理C/C++头文件
- javascript - 多个表单进入同一文档的不同工作表
- mathematical-optimization - 所有车辆的时间受限的 VRP
- r - 使用 str_detect() 从列中提取信息,然后创建一个新列
- python - 涉及函数的错误,变量未在事件中更新