希望有人可以帮助我,我是EPiServer的新手并且已经获得了数据迁移任务。我们使用的是最新版本8.5。我需要将客户本地CMS(幸运的是树状结构)中的内容迁移到EPiServer。网上似乎没有关于此的大量信息 - 也许我只是不知道搜索的正确信息。
看起来好像使用EPiServer.ServiceApi可能是要走的路,但再找一些有用的文档证明是困难的。
我在考虑在SQL Server中设置客户端CMS并编写一个简单的控制台应用程序来调用插入内容的EPiServer.ServiceApi。如果有人对此有更好的信息或更好的例子,我会非常感激。
谢谢,
丹
答案 0 :(得分:2)
如果您只是从其他CMS导入内容,我会在EPiServer中编写预定作业:
http://world.episerver.com/code/dannymurphy/Stoppable-Scheduled-Job-with-feedback/
然后该作业使用标准IContentRepository创建内容:
这样您就可以随时运行它并可以访问EPiServers完整的API。您还可以通过作业状态查看导入的进度。
在作业中,您可以将内容作为您喜欢的任何格式的文件或直接从源CMS数据库或某些xml或RSS源读取。
我已经通过这种方式从PHP,Java和.NET CMS中移植了内容。在.NET中,您甚至可以通过WCF或SOAP访问源CMS(如果可用)。
ServiceApi相对较新,更专注于Commerce产品和媒体资产,而不是CMS页面和块内容,因此我不会使用它。
顺便说一句,下面有关于ServiceApi的完整文档,你没找到它吗?
http://world.episerver.com/documentation/Items/EPiServer-Service-API/
关于语言管理,您可以在以下链接中阅读更多内容:
http://tedgustaf.com/blog/2010/5/create-a-new-page-language-branch-programmatically-in-episerver/
基本上,您有多种语言可供选择。如果内容只是直接翻译,您应该创建同一页面的九个不同语言版本(分支)。您还可以在EPiServer安装中拥有多个站点,但这需要9个单独的许可证(以及相关的成本)。
答案 1 :(得分:0)
我做了很多EpiServer内容迁移项目。如果可能,最简单的方法是在Json中导出当前站点树,然后将其导入EpiServer。我不得不在最近的一个项目中做到这一点,并与Json.net混合在一起非常容易。
如果你想走那条路,你可以在这里找到所有代码:EpiServer Content Migration With Json.Net/