我想将项目从主数据库传输到类似的数据库(比如说主数据库的副本),这是主数据库的脱机备份。此更新将每天进行。
我已经配置了 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/