为了账号安全,请及时绑定邮箱和手机立即绑定

属性“[ApiExplorerSettings(IgnoreApi = true)]”有什么作用?

属性“[ApiExplorerSettings(IgnoreApi = true)]”有什么作用?

C#
郎朗坤 2023-09-09 16:13:59
编辑:我知道属性通常做什么,问题仅针对这个特定属性。对困惑感到抱歉!我已经阅读了以下问题以及这个问题,它指出如何使用该属性来忽略特定方法或整个控制器生成的 swagger/swashbuckle 文档。(文档是包含所有 api 的 swagger 页面,我相信?)但是除了 swagger/swashbuckle(它是一个 NuGet 包)之外,这个属性在 ASP.NET 中还有什么其他功能呢?
查看完整描述

3 回答

?
小怪兽爱吃肉

TA贡献1852条经验 获得超1个赞

当应用于控制器上的公共方法时,它会阻止该方法出现在 swagger ui 中。



查看完整回答
反对 回复 2023-09-09
?
Smart猫小萌

TA贡献1911条经验 获得超7个赞

首先需要澄清的是,C# 中的属性本身不会触发任何内容。外部代码搜索标有特定属性的类、方法或属性,并采取相应的操作。

当然,ASP.NET MVC 中有很多构建块,有时可能会令人困惑。

Swagger 使用此属性来隐藏端点。

也可以通过IApiDescriptionProvider和其他相关接口的给定实现使用(至少在 .NET core 中) ,但只有在实际使用它们时才有效(通过在 Startup.cs 中配置它们)

查看完整回答
反对 回复 2023-09-09
?
MM们

TA贡献1886条经验 获得超2个赞

该属性有助于控制可见性。当我们想要隐藏特定的控制器或操作以使其不显示在 swagger UI 中时,我们可以在控制器类或操作方法上使用它。



查看完整回答
反对 回复 2023-09-09
  • 3 回答
  • 0 关注
  • 60 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信