我只是想开发 .NET WCF API。我们可能需要经常更新 API。
如何管理多个版本的 API 部署?
最佳答案
对您的服务进行版本控制是一个包含许多注意事项和指南的巨大主题。
首先,您可以进行不同类别的更改;全断、半断和非断。
不间断更改(无需对现有客户端进行更改)包括:
半破坏性更改(通常可以在客户端配置)包括:
完全破坏性的更改(需要新版本的客户端)包括:
当您要进行半或完全破坏性更改时,您应该评估执行此操作的最佳方法。您是强制所有客户端升级以使用新版本,还是在不同端点共同托管两个版本的服务?如果您选择后者,那么您将如何控制和管理这可能引入的不同版本控制依赖项的传播?
更极端的情况是,您可以研究动态端点解析,即客户端使用某种解析器服务解析合适的端点以在运行时调用。
这里有很好的读物:
http://msdn.microsoft.com/en-us/library/ms731060.aspx
关于WCF API 部署版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8703854/