.net 动态给action添加注释

引用

using Microsoft.OpenApi.Models;
using Swashbuckle.AspNetCore.SwaggerGen;

实现

public class ActionDesc : IOperationFilter
    {
        string documentName;

        public ActionDesc(string documentName)
        {
            this.documentName = documentName;
        }

        public void Apply(OpenApiOperation operation, OperationFilterContext context)
        {
            //过滤处理
            //context.ApiDescription.ActionDescriptor.FilterDescriptors;
            var attrs = context.MethodInfo.GetCustomAttributes(true);
            //context.ApiDescription.ActionDescriptor.DisplayName += "helloworld";
            if (attrs != null && attrs.Length > 0)
            {
                if (attrs.Any(f => f.GetType() == typeof(HttpGetAttribute)))
                {
                    //添加需要的注释
                    operation.Description += " This is a GET method action";
                }
            }
        }
    }

效果

参考

posted @   Hey,Coder!  阅读(89)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 按钮权限的设计及实现
历史上的今天:
2020-04-01 c# 获取文件信息
点击右上角即可分享
微信分享提示