0

我们的一位客户有一个相当大的网站,目前使用 Kentico 11 / Protal Engine 构建。我们现在正在准备过渡到 Kentico 12 / MVC。

我们希望按部分逐步执行此操作。我们对此有几个担忧:

  • 是否可以运行网站的部分 Kentico 12 MVC 和其他部分 Kentico 12 Portal Engine?

  • 是否可以先处理特定的文化?那么同一页面是否可以有 2 个版本(MVC / Portal Engine)?

  • 有没有关于逐步过渡到 K12 MVC 的最佳实践?由于这是一个相当大的站点,因此我们必须逐步进行此过渡。

4

2 回答 2

4

强烈建议不要在 Kentico 中混合 Portal Engine 站点和 MVC 站点(Web 表单和 MVC 在同一个项目中)。虽然是的,但这在技术上是可行的(请参阅在旧版本 Kentico的门户引擎中部分使用 MVC 的网站上的此链接),这远非最佳实践。有性能考虑(Web 表单生命周期和 mvc 管道中处理请求的开销)、长期可维护性考虑(很难记住去哪里/去哪里),以及需要处理的总体技术债务。

当需要重新设计作为最佳选择时,或者当 Portal 上的 Kentico 不再支持您的 Kentico 版本时,我建议您跳到整个 MVC 上(请参阅Kentico MVC 过渡指南

如果您绝对需要分块执行此操作,请考虑在您的 Kentico 实例中的不同子域中创建第二个站点,并在那里为 Kentico 学习 MVC,同时仍连接到同一个实例。您可以开始将内容视为可通过干净 MVC 架构中的 Kentico 库 nuget 包访问的内容模型。该站点可以位于 subdomain.website.com,而您现有的门户引擎站点可以位于 www.website.com。同样,这不是我的首选,但在您的场景中可能有意义。

于 2020-04-20T14:40:51.423 回答
1

没有简单的方法将 Portal Engine 和 MVC 结合在一起。在您的场景中,这将更加困难,因为 Portal 站点位于 Kentico 11 上,而您将在 Kentico 12 上构建 MVC 站点我想。因此,我看到的唯一策略是:

  • 逐个部分地为新站点开发、发布和迁移内容
  • 分别托管两种解决方案(单独的数据库、单独的 Web 服务器)
  • 设置一个反向代理,根据 URL 将请求路由到旧站点或新站点,这样对于站点访问者来说,它仍然看起来像一个站点

这种方法的唯一挑战是您是否有一些在整个网站上使用的功能。例如,它可以是用于电子商务、收藏夹、时事通讯等的我的帐户。在这种情况下,我建议考虑首先将其与相关部分一起移动。

于 2020-04-20T08:08:43.237 回答