1

我正在将已经运行了一段时间的 Web 应用程序转换为 Sitefinity 4 托管站点。有大量关于如何使用该软件创建新站点的文档,但我发现很少有描述如何从非 cms 迁移到 Sitefinity 的过程。

所以 - 具体来说,我想要一些关于从非托管转换为托管的过程的指导。我一直在搜索谷歌和 Sitefinity 论坛等,但除了如何从一个版本的 Sitefinity 迁移到另一个版本之外什么都没有找到——这不是我想要做的。

访问网站或阅读文档页面的任何线索都会非常有帮助。

4

3 回答 3

1

实际上这很容易实现。Sitefinity 是完全动态的 CMS(意思是,没有真实文件)。该实现使用 RoutingEngine 和 VirtualPathProvider 来实现这一点。这实际上意味着您有两个可靠的标准扩展点来将站点拆分为“sitefinity 托管部分”和“自定义托管部分”。

因此,一个非常简单的方法是在 SitefinityPageRoute 之前简单地注册一个路由(更多信息:ASP.NET routing),因为如果 SitefinityPageRoute 找不到页面,它将抛出 404。

因此,假设您在 SitefinityPageRoute 之前注册了一个路由“~/mystuff”,所有以“~/mystuff”开头的请求将首先转到您的 RouteHandler,您可以决定处理它们(写入 http 响应)或什么都不做,并且让它落到Sitefinity路线上。

另一种方法当然是实现自定义 VirtualPathProvider,但是,如果您只是希望以不同方式处理某些页面,这可能是一种矫枉过正的做法。

话虽如此,很明显,Sitefinity 无法处理的页面将不会由 Sitefinity 处理 :) (因此,没有页面编辑器、没有工作流、没有翻译、没有小部件、没有模板、没有主题)。

于 2012-04-04T10:02:40.027 回答
1

您必须在项目开始时硬着头皮投入更多资源,并且在一段时间内不发布任何东西。没有基本组件,您将无法驾驶汽车。同样的原则在这里也适用。

无论您的要求是什么,您要么必须破解 CMS,然后再修复这些漏洞,要么从一开始就正确地进行操作。

  1. 查看您现有的网站并将其分解为更小的块
  2. 请咨询 Sitefinity 文档/合作伙伴/自由职业者,了解如何将现有内容迁移到 Sitefinity 平台
  3. 完成迁移并开始实施

这是非常粗略的指导方针,但您的要求也是如此。

总而言之,没有快速的方法。您必须从一开始就正确地进行操作,或者稍后在错误/黑客修复上投入更多资源。

于 2012-02-22T21:06:13.550 回答
1

如果我们在应用程序的根目录中有 Sitefinity,根据 Sitefinity,我们不能拥有任何不由 SF 管理的页面

这并不完全正确。Sitefinity 允许您添加“外部页面”,这意味着您可以在站点地图中创建想要外部页面的 odes。因此,您在 Sitefinity 中的导航将显示完整的网站页面结构,而该结构中的某些页面实际上会链接到外部页面。

以编程方式创建页面结构绝对是一项简单快捷的任务。

于 2012-02-27T08:15:10.157 回答