0

因此,我们的任务是将基于 Kentico(根据 dll 版本我认为它是 v7.0)的站点迁移到另一个(非 .NET)解决方案。该站点相当小。

当然,为了将旧站点迁移到新站点,我们必须保留旧内容以及旧 URL。当然,旧 URL 的末尾有 .aspx。我们希望他们都向新的服务器抛出 HTTP 301。

我不是 .NET 开发人员,而且我已经在 Kentico 的 DB 和 Web 界面周围窥探了一段时间。我已将其范围缩小到 CMS_Document 表。:) 我知道并找到了以下字段:

DocumentPageTitle
DocumentPageKeyWords
DocumentPageDescription
DocumentContent

一切都是直截了当的。

任何人都可以提供有关在同一 URL 上查找连接 URL -> DB 条目 -> 网页的具体信息吗?

但是呢DocumentUrlPath?如果有看到/example我可以确定这等于一个真实的 URL/example.aspx吗?

DocumentForeignKeyValue指向哪个表?

如何区分该表中的页面和图像?是的,有该DocumentType字段,但它只存储了用于文本和图片文件的文件扩展名(如 .png),它似乎是NULL为其他人准备的?

到目前为止,我的结论是否正确?感谢您的时间。

4

1 回答 1

1

事实证明,由于数据库结构非常复杂,数据库中还创建了很多视图。这View_CMS_Tree_Joined是视图(或我正在寻找的视图之一)。

快速参考我需要的一些列:

[ClassName]
[ClassDisplayName]
[DocumentPageTitle]
[DocumentPageKeyWords]
[DocumentPageDescription]
[DocumentContent]
[DocumentType]
[NodeAliasPath]
[DocumentUrlPath]
[DocumentExtensions]

这些(和其他一些)似乎足以解析出一些数据。一个痛苦将是实际的页面内容,因为它非常有趣地存储在数据库中:

<content>
<webpart id="editabletext;821223e7-e515-4a0b-92c1-30726c724889"><![CDATA[<p>SOME TEXT HERE</p>]]></webpart>
<webpart id="editableimage;27a57931-f182-4ae9-b41d-1af0790d5286"><![CDATA[<image><property name="imagepath">~/asdasd/media/asdasd/images/2013/4.gif</property></image>]]>
<!-- EVEN MORE STUFF LIKE THAT-->
</content>

因此,每个标签都包含在CDATAwebpart 标签中。我可以忍受CDATA但为什么非标准标签?无论如何都会设法将其解析出来。

可以在本文档中找到有关数据库结构的一些附加信息。数据库参考也被证明是一个很好的资源。

非常感谢Kentico 开发论坛上的人,他们对此的评论可以在这里找到。

于 2013-07-10T14:23:28.733 回答