Sitecore 以编程方式传输项目

标签 sitecore sitecore6

我想将项目从主数据库传输到类似的数据库(比如说主数据库的副本),这是主数据库的脱机备份。此更新将每天进行。

我已经配置了 marster_archive 数据库并尝试了 Sitecore 传输项目功能。它将选定的项目从 master 数据库复制到 master_archive 数据库。

我想以编程方式执行此操作,我该如何执行此操作? (Sitecore 6.6)

最佳答案

以下是 Transfer 命令使用的代码的简化版本:

public void Transfer()
{
    Item sourceItem = ...;
    Item destinationItem = ...;
    using (new ProxyDisabler())
    {
        string outerXml = sourceItem.GetOuterXml(includeSubitems);
        try
        {
            destinationItem.Paste(outerXml, false, PasteMode.Overwrite);
            Log.Audit((object) this, "Transfer from database: {0}, to:{1}",
                        AuditFormatter.FormatItem(sourceItem),
                        AuditFormatter.FormatItem(destinationItem));
        }
        catch (TemplateNotFoundException ex)
        {
            // handle exception - first transfer templates, than items
        }
    }
}

关于Sitecore 以编程方式传输项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17523716/

相关文章:

sitecore - 我们可以在 session 中存储 Sitecore 项目吗

c# - 在 WCF 服务中调用 Sitecore Database.Templates[] 时出现 NullReferenceException

sitecore - 营销人员使用网络表单的条件字段?

sitecore - 如何在 sitecore 中管理记录的个性化

upgrade - 如何升级Sitecore CD环境?

Sitecore 工作流程 - 发布处于草稿状态的项目

asp.net - 如何下载用于个人/学习目的的 sitecore CMS?

sitecore - 如何在 Sitecore Web Form for Marketer 8.1 中创建自定义字段类型

workflow - 具有多个发布目标的站点核心工作流程

Sitecore 项目不包含所有字段,为什么?