web api 多版本控制重要的两个类

2021-06-23 04:06

阅读:615

标签:swa   agg   ext   text   odi   default   rem   oid   info   

1、版本路径替换

public class ReplaceVersionWithExactValueInPath : IDocumentFilter
    {
        public void Apply(SwaggerDocument swaggerDoc, DocumentFilterContext context)
        {
            swaggerDoc.Paths = swaggerDoc.Paths
                .ToDictionary(
                    path => path.Key.Replace("v{version}", swaggerDoc.Info.Version),
                    path => path.Value
                );
        }
    }


2、在访问时去掉版本参数。自动获得版本的值传入。

 public class RemoveVersionFromParameter : IOperationFilter
    {
        public void Apply(Operation operation, OperationFilterContext context)
        {
            if (operation.Parameters.Count > 0)
            {
                var versionParameter = operation.Parameters.FirstOrDefault(p => p.Name == "version");
                operation.Parameters.Remove(versionParameter);
            }
        }
    }


web api 多版本控制重要的两个类

标签:swa   agg   ext   text   odi   default   rem   oid   info   

原文地址:https://www.cnblogs.com/cato/p/10201704.html


评论


亲,登录后才可以留言!