【发布时间】:2013-07-08 09:53:06
【问题描述】:
我想将项目从 master 数据库传输到类似的数据库(比如说 master 数据库的副本),这是 master 数据库的脱机备份。此更新每天都会发生。
我已配置 marster_archive 数据库并尝试了 Sitecore 传输项目功能。它将所选项目从 master db 复制到 master_archive db。
我想以编程方式执行此操作,我该如何执行此操作? (站点核心 6.6)
【问题讨论】:
我想将项目从 master 数据库传输到类似的数据库(比如说 master 数据库的副本),这是 master 数据库的脱机备份。此更新每天都会发生。
我已配置 marster_archive 数据库并尝试了 Sitecore 传输项目功能。它将所选项目从 master db 复制到 master_archive db。
我想以编程方式执行此操作,我该如何执行此操作? (站点核心 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
}
}
}
【讨论】: