我有一个 AspNetZero .NetCore + Angular 项目,我需要对项目实施 api 版本控制以实现向后兼容性。我在网上看了几个例子,但是它们要么没有指定所有的步骤,要么是特定于 mvc 的,而且这个项目使用了 AppService 模式。如果有人成功地在 AspNetZero 项目中实现了 api 版本控制,我将非常感谢您的帮助。
我目前在显示两个版本的 swagger 页面上,但是对于 v1,我得到一个 AmbiguousMatchException 并且对于 v2 swagger 找不到 v2 文件,所以我认为它没有生成。
在我的应用程序项目中,我将当前 AppService 的命名空间更改为 .v1,并创建了一个具有命名空间 v2 的新 AppService,它继承了旧的,并覆盖了 1 个方法,即 v2。
目的是一旦完成即能够调用这两种方法:(http://localhost:9901/api/services/app/Equities/Get_Snapshot 或 http://localhost:9901/api/services/v1/Equities /Get_Snapshot) 和 http://localhost:9901/api/services/v2/Equities/Get_Snapshot