web api 多版本控制重要的两个类
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); } } }
作者:凡本丶
出处:http://www.cnblogs.com/cato/
纸上得来终觉浅,绝知此事要躬行。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。如有问题,联系我,非常感谢。