Fast.Swagger 公开 API
目标 net8.0;net9.0;net10.0。本页为语法声明与 XML 注释参考,运行示例和边界见模块用法。
源码提交:43554c07f6c216f80b509bd535c0a5b66ae7f2e8。维护流程:scripts/export-dotnet-api.ps1;普通站点构建直接消费此文件。
Fast.Swagger.OperationIdAttribute
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
[AttributeUsage(AttributeTargets.Method)]
public sealed class OperationIdAttribute : Attribute配置规范化文档 OperationId 问题
Fast.Swagger.OperationIdAttribute.OperationIdAttribute
源码 · 目标:net8.0、net9.0、net10.0
public OperationIdAttribute(string operationId)初始化类的新实例
- 参数
operationId:operation 的唯一标识
Fast.Swagger.OperationIdAttribute.OperationId
源码 · 目标:net8.0、net9.0、net10.0
public string OperationId { get; set; }自定义 OperationId
Fast.Swagger.SchemaIdAttribute
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
[AttributeUsage(AttributeTargets.Class)]
public sealed class SchemaIdAttribute : Attribute解决规范化文档 SchemaId 冲突问题
Fast.Swagger.SchemaIdAttribute.SchemaIdAttribute
源码 · 目标:net8.0、net9.0、net10.0
public SchemaIdAttribute(string schemaId)初始化类的新实例
- 参数
schemaId:schema 的唯一标识
Fast.Swagger.SchemaIdAttribute.SchemaIdAttribute
源码 · 目标:net8.0、net9.0、net10.0
public SchemaIdAttribute(string schemaId, bool replace)初始化类的新实例
- 参数
schemaId:schema 的唯一标识 - 参数
replace:替换默认 SchemaId 的自定义值
Fast.Swagger.SchemaIdAttribute.SchemaId
源码 · 目标:net8.0、net9.0、net10.0
public string SchemaId { get; set; }自定义 SchemaId
Fast.Swagger.SchemaIdAttribute.Replace
源码 · 目标:net8.0、net9.0、net10.0
public bool Replace { get; set; }完全覆盖
说明:默认在头部叠加,设置 true 之后,将直接使用 SchemaId
Fast.Swagger.SwaggerDocumentBuilder
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public static class SwaggerDocumentBuilder规范化文档构建器
Fast.Swagger.SwaggerDocumentBuilder.DocumentGroups
源码 · 目标:net8.0、net9.0、net10.0
public static readonly IEnumerable<string> DocumentGroups;文档分组列表
Fast.Swagger.SwaggerDocumentBuilder.CheckApiDescriptionInCurrentGroup
源码 · 目标:net8.0、net9.0、net10.0
public static bool CheckApiDescriptionInCurrentGroup(string currentGroup, ApiDescription apiDescription)检查方法是否在分组中
- 参数
currentGroup:当前正在处理的文档分组 - 参数
apiDescription:当前 API 的描述信息 - 返回:API 应包含在当前文档分组中时返回
true;否则返回false
Fast.Swagger.SwaggerDocumentBuilder.GetOpenApiGroups
源码 · 目标:net8.0、net9.0、net10.0
public static List<SwaggerOpenApiInfo> GetOpenApiGroups()获取所有的规范化分组信息
- 返回:获取到的所有的规范化分组信息集合
Fast.Swagger.SwaggerDocumentBuilder.GetGroupOpenApiInfo
源码 · 目标:net8.0、net9.0、net10.0
public static SwaggerOpenApiInfo GetGroupOpenApiInfo(string group)获取分组配置信息
- 参数
group:文档分组名称 - 返回:获取到的分组配置信息
Fast.Swagger.SwaggerDocumentBuilder.GetControllerGroups
源码 · 目标:net8.0、net9.0、net10.0
public static IEnumerable<GroupExtraInfo> GetControllerGroups(Type type)获取控制器分组列表
- 参数
type:目标类型 - 返回:获取到的控制器分组列表集合
Fast.Swagger.SwaggerDocumentBuilder.GetActionGroups
源码 · 目标:net8.0、net9.0、net10.0
public static IEnumerable<GroupExtraInfo> GetActionGroups(MethodInfo method)获取动作方法分组列表
- 参数
method:目标方法 - 返回:获取到的动作方法分组列表集合
Fast.Swagger.SwaggerDocumentBuilder.GetControllerTag
源码 · 目标:net8.0、net9.0、net10.0
public static string GetControllerTag(ControllerActionDescriptor controllerActionDescriptor)获取控制器标签
- 参数
controllerActionDescriptor:当前控制器操作的描述信息 - 返回:获取到的控制器标签
Fast.Swagger.SwaggerDocumentBuilder.GetActionTag
源码 · 目标:net8.0、net9.0、net10.0
public static string GetActionTag(ApiDescription apiDescription)获取动作方法标签
- 参数
apiDescription:当前 API 的描述信息 - 返回:获取到的动作方法标签
Fast.Swagger.SwaggerDocumentBuilder.IsApiAction
源码 · 目标:net8.0、net9.0、net10.0
public static bool IsApiAction(MethodInfo method, Type ReflectedType)是否是动作方法
- 参数
method:目标方法 - 参数
ReflectedType:Reflected 类型 - 返回:满足条件时返回
true;否则返回false
Fast.Swagger.GroupExtraInfo
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class GroupExtraInfo分组附加信息
Fast.Swagger.GroupExtraInfo.Group
源码 · 目标:net8.0、net9.0、net10.0
public string Group { get; internal set; }分组名
Fast.Swagger.GroupExtraInfo.Order
源码 · 目标:net8.0、net9.0、net10.0
public int Order { get; internal set; }分组排序
Fast.Swagger.GroupExtraInfo.Visible
源码 · 目标:net8.0、net9.0、net10.0
public bool Visible { get; internal set; }是否可见
Fast.Swagger.SwaggerLoginInfo
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class SwaggerLoginInfoSwagger 文档授权登录配置信息
Fast.Swagger.SwaggerLoginInfo.Enabled
源码 · 目标:net8.0、net9.0、net10.0
public bool Enabled { get; set; }是否启用授权控制
Fast.Swagger.SwaggerLoginInfo.CheckUrl
源码 · 目标:net8.0、net9.0、net10.0
public string CheckUrl { get; set; }检查登录地址
Fast.Swagger.SwaggerLoginInfo.SubmitUrl
源码 · 目标:net8.0、net9.0、net10.0
public string SubmitUrl { get; set; }提交登录地址
Fast.Swagger.SwaggerOpenApiInfo
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class SwaggerOpenApiInfo : OpenApiInfoSwagger 文档开放接口信息
Fast.Swagger.SwaggerOpenApiInfo.SwaggerOpenApiInfo
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerOpenApiInfo()初始化类的新实例
Fast.Swagger.SwaggerOpenApiInfo.Group
源码 · 目标:net8.0、net9.0、net10.0
public string Group { get; set; }所属组
Fast.Swagger.SwaggerOpenApiInfo.Order
源码 · 目标:net8.0、net9.0、net10.0
public int? Order { get; set; }排序
Fast.Swagger.SwaggerOpenApiInfo.Visible
源码 · 目标:net8.0、net9.0、net10.0
public bool? Visible { get; set; }是否可见
Fast.Swagger.SwaggerOpenApiInfo.RouteTemplate
源码 · 目标:net8.0、net9.0、net10.0
public string RouteTemplate { get; internal set; }路由模板
Fast.Swagger.SwaggerOpenApiSecurityRequirementItem
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class SwaggerOpenApiSecurityRequirementItem安全定义需求子项
Fast.Swagger.SwaggerOpenApiSecurityRequirementItem.SwaggerOpenApiSecurityRequirementItem
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerOpenApiSecurityRequirementItem()初始化类的新实例
Fast.Swagger.SwaggerOpenApiSecurityRequirementItem.Scheme
源码 · 目标:net8.0、net9.0、net10.0
public OpenApiSecurityScheme Scheme { get; set; }安全 Schema
Fast.Swagger.SwaggerOpenApiSecurityRequirementItem.Accesses
源码 · 目标:net8.0、net9.0、net10.0
public string[] Accesses { get; set; }权限
Fast.Swagger.SwaggerOpenApiSecurityScheme
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class SwaggerOpenApiSecurityScheme : OpenApiSecuritySchemeSwagger 文档安全配置
Fast.Swagger.SwaggerOpenApiSecurityScheme.SwaggerOpenApiSecurityScheme
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerOpenApiSecurityScheme()初始化类的新实例
Fast.Swagger.SwaggerOpenApiSecurityScheme.Id
源码 · 目标:net8.0、net9.0、net10.0
public string Id { get; set; }唯一Id
Fast.Swagger.SwaggerOpenApiSecurityScheme.Requirement
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerOpenApiSecurityRequirementItem Requirement { get; set; }安全需求
Fast.Swagger.IApplicationBuilderExtension
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public static class IApplicationBuilderExtension为 IApplicationBuilder 提供 Swagger 扩展方法
Fast.Swagger.IApplicationBuilderExtension.UseSwaggerDocuments
源码 · 目标:net8.0、net9.0、net10.0
public static IApplicationBuilder UseSwaggerDocuments(this IApplicationBuilder app, Action<SwaggerOptions> configure = null,
Action<SwaggerUIOptions> configureUI = null)启用 Swagger
- 参数
app:要配置的应用管道 - 参数
configure:Swagger 配置操作 - 参数
configureUI:Swagger UI 配置操作 - 返回:返回当前应用管道构建器,便于链式调用
Fast.Swagger.IServiceCollectionExtension
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public static class IServiceCollectionExtension为 IServiceCollection 提供 Swagger 扩展方法
Fast.Swagger.IServiceCollectionExtension.AddSwaggerDocuments
源码 · 目标:net8.0、net9.0、net10.0
public static IServiceCollection AddSwaggerDocuments(this IServiceCollection services, IConfiguration configuration,
string section = "SwaggerSettings", Action<SwaggerGenOptions> configure = null)添加 Swagger 服务
- 参数
services:要添加服务的服务集合 - 参数
configuration:用于读取模块设置的配置 - 参数
section:配置节名称 - 参数
configure:Swagger 生成配置操作 - 返回:返回
services,便于链式调用
Fast.Swagger.IServiceCollectionExtension.AddSwaggerDocuments
源码 · 目标:net8.0、net9.0、net10.0
public static IServiceCollection AddSwaggerDocuments(this IServiceCollection services,
Action<SwaggerSettingsOptions> optionAction, Action<SwaggerGenOptions> configure = null)添加 Swagger 服务
- 参数
services:要添加服务的服务集合 - 参数
optionAction:Swagger 配置操作 - 参数
configure:Swagger 生成配置操作 - 返回:返回
services,便于链式调用
Fast.Swagger.ISwaggerOptions
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public interface ISwaggerOptionsSwagger 配置
Fast.Swagger.ISwaggerOptions.SwaggerGen
源码 · 目标:net8.0、net9.0、net10.0
Action<SwaggerGenOptions> SwaggerGen();配置 Swagger 生成器
- 返回:配置 Swagger 生成器
Fast.Swagger.ISwaggerOptions.Swagger
源码 · 目标:net8.0、net9.0、net10.0
Action<SwaggerOptions> Swagger();配置 Swagger 全局参数
- 返回:配置 Swagger 全局参数
Fast.Swagger.ISwaggerOptions.SwaggerUI
源码 · 目标:net8.0、net9.0、net10.0
Action<SwaggerUIOptions> SwaggerUI();配置 Swagger UI 全局参数
- 返回:配置 Swagger UI 全局参数
Fast.Swagger.SwaggerSettingsOptions
源码 · 目标:net8.0、net9.0、net10.0
[SuppressSniffer]
public sealed class SwaggerSettingsOptions : IPostConfigureSwagger 配置选项
Fast.Swagger.SwaggerSettingsOptions.Enable
源码 · 目标:net8.0、net9.0、net10.0
public bool? Enable { get; set; }是否启用/注入规范化文档
Fast.Swagger.SwaggerSettingsOptions.DocumentTitle
源码 · 目标:net8.0、net9.0、net10.0
public string DocumentTitle { get; set; }文档标题
Fast.Swagger.SwaggerSettingsOptions.DefaultGroupName
源码 · 目标:net8.0、net9.0、net10.0
public string DefaultGroupName { get; set; }默认分组名
Fast.Swagger.SwaggerSettingsOptions.EnableAuthorized
源码 · 目标:net8.0、net9.0、net10.0
public bool? EnableAuthorized { get; set; }启用授权支持
Fast.Swagger.SwaggerSettingsOptions.FormatAsV2
源码 · 目标:net8.0、net9.0、net10.0
public bool? FormatAsV2 { get; set; }格式化为 V2 版本
Fast.Swagger.SwaggerSettingsOptions.RoutePrefix
源码 · 目标:net8.0、net9.0、net10.0
public string RoutePrefix { get; set; }配置规范化文档地址
Fast.Swagger.SwaggerSettingsOptions.DocExpansionState
源码 · 目标:net8.0、net9.0、net10.0
public DocExpansion? DocExpansionState { get; set; }文档展开设置
Fast.Swagger.SwaggerSettingsOptions.XmlComments
源码 · 目标:net8.0、net9.0、net10.0
public string[] XmlComments { get; set; }XML 描述文件
Fast.Swagger.SwaggerSettingsOptions.GroupOpenApiInfos
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerOpenApiInfo[] GroupOpenApiInfos { get; set; }分组信息
Fast.Swagger.SwaggerSettingsOptions.SecurityDefinitions
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerOpenApiSecurityScheme[] SecurityDefinitions { get; set; }安全定义
Fast.Swagger.SwaggerSettingsOptions.Servers
源码 · 目标:net8.0、net9.0、net10.0
public OpenApiServer[] Servers { get; set; }配置 Servers
Fast.Swagger.SwaggerSettingsOptions.HideServers
源码 · 目标:net8.0、net9.0、net10.0
public bool? HideServers { get; set; }隐藏 Servers
Fast.Swagger.SwaggerSettingsOptions.RouteTemplate
源码 · 目标:net8.0、net9.0、net10.0
public string RouteTemplate { get; set; }默认 swagger.json 路由模板
Fast.Swagger.SwaggerSettingsOptions.PackagesGroups
源码 · 目标:net8.0、net9.0、net10.0
public string[] PackagesGroups { get; set; }配置安装第三方包的分组名
Fast.Swagger.SwaggerSettingsOptions.EnableEnumSchemaFilter
源码 · 目标:net8.0、net9.0、net10.0
public bool? EnableEnumSchemaFilter { get; set; }启用枚举 Schema 筛选器
Fast.Swagger.SwaggerSettingsOptions.EnableTagsOrderDocumentFilter
源码 · 目标:net8.0、net9.0、net10.0
public bool? EnableTagsOrderDocumentFilter { get; set; }启用标签排序筛选器
Fast.Swagger.SwaggerSettingsOptions.ServerDir
源码 · 目标:net8.0、net9.0、net10.0
public string ServerDir { get; set; }服务目录(修正 IIS 创建 Application 问题)
Fast.Swagger.SwaggerSettingsOptions.LoginInfo
源码 · 目标:net8.0、net9.0、net10.0
public SwaggerLoginInfo LoginInfo { get; set; }配置规范化文档登录信息
Fast.Swagger.SwaggerSettingsOptions.EnableAllGroups
源码 · 目标:net8.0、net9.0、net10.0
public bool? EnableAllGroups { get; set; }启用 All Groups 功能
Fast.Swagger.SwaggerSettingsOptions.EnumToNumber
源码 · 目标:net8.0、net9.0、net10.0
public bool? EnumToNumber { get; set; }枚举类型生成值类型
Fast.Swagger.SwaggerSettingsOptions.PostConfigure
源码 · 目标:net8.0、net9.0、net10.0
public void PostConfigure()说明继承自接口或基类,需结合对应声明阅读。
