首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >aspnet-api-versioning的好处是什么?

aspnet-api-versioning的好处是什么?
EN

Stack Overflow用户
提问于 2018-05-16 00:56:39
回答 1查看 245关注 0票数 4

通过使用控制器名称进行路由(除非为每个控制器/操作设置了路由),我看到了使用ApiVersion属性的唯一好处,因为版本化的API使用相同的控制器名称,但在不同的名称空间中。

否则,我找到的正确用法是:

代码语言:javascript
复制
[ApiVersion("2.0"]
[RoutePrefix("api/v{version:apiVersion}/test")]

我在这里看不到任何效率或生产力收益,当它必须全面应用时,丢弃软件包和简单地使用以下代码没有区别:

代码语言:javascript
复制
[RoutePrefix("api/v2.0/test")]

我只能假设我在这里遗漏了一些明显的东西。

EN

回答 1

Stack Overflow用户

发布于 2020-01-15 23:47:41

这里有一系列的好处;太多了,在这里不能一一列举。以下是一些最常见的高级好处的尝试:

API版本的

  • 是一个一级类型,而不是一个神奇的字符串。2.02在语义上是等价的;因此,api/v2.0/testapi/v2/test是同一资源。
  • You do 必须使用属性。这是您可以应用API版本的几种方法之一。你也可以使用conventions.
  • There是一个内置的约定来支持一个隐式的API版本,它包含了namespace.
  • Multiple版本支持的风格(查询字符串,网址段,头文件,媒体类型)或者你可以插件自己的方法。
  • API版本到方法的映射。单个控制器可能支持多个API版本,这称为版本交错。您可以在定义单个路由模板的同时,映射要在单个控制器类型上调用的不同操作方法。(例如: API可能映射到API,GetV2).
  • API可能映射到API版本通告,这使您可以通知您的客户每个1.0支持和/或不推荐使用哪些API版本。
  • API资源管理器支持,它按版本整理您的API,并与Swagger/ 2.0文档等一起使用。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50355581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档