2

我们有一个使用 ASP.Net 5 框架构建的现有 Web API。我们现在计划开发新的微服务。我们正在尝试尽可能重用现有 API 的代码。我们的旧 API(单体)或新的微服务将根据客户需求进行部署。

我们发现很难在单体 API 和微服务之间共享控制器。考虑使用“添加为链接文件”,但在控制器文件的情况下不起作用。还有其他方法可以共享控制器吗?

4

1 回答 1

3

我们正在尝试尽可能重用现有 API 的代码

你为什么要这样做?您是否将其视为潜在的节省时间?不要,它不会为你节省任何时间。您是否担心代码同时在两个地方?不要——服务应该是自治的,这意味着我们必须接受一定程度的冗余。

我们发现很难在单体 API 和微服务之间共享控制器

这可能是一个信号,表明您不应该这样做。

还有其他方法可以共享控制器吗?

好吧,我想我们都同意控制器本身不应该被共享。但是,控制器可以(并且应该)简单地将调用处理委托给另一个依赖项,因此理论上您可以只获取依赖项并在这样的服务之间共享它。

于 2016-07-04T12:19:08.953 回答