Я хочу использовать SPExport (работает нормально) и SPImport для копирования одной сети в другое место.Я использую страницу приложения в Sharepoint Foundation 2010. Этот код выполняется в событии нажатия кнопки.
using (SPWeb web = site.OpenWeb(sourceWebUrl))
{
SPExportSettings exportSettings = new SPExportSettings();
exportSettings.FileLocation = exportPath;
exportSettings.BaseFileName = exportFileName;
exportSettings.SiteUrl = site.Url;
exportSettings.ExportMethod = SPExportMethodType.ExportAll;
exportSettings.FileCompression = true;
exportSettings.IncludeVersions = SPIncludeVersions.All;
exportSettings.IncludeSecurity = SPIncludeSecurity.All;
exportSettings.ExcludeDependencies = false;
exportSettings.ExportFrontEndFileStreams = true;
exportSettings.OverwriteExistingDataFile = true;
SPExportObject expObj = new SPExportObject();
expObj.IncludeDescendants = SPIncludeDescendants.All;
expObj.Id = web.ID;
expObj.Type = SPDeploymentObjectType.Web;
exportSettings.ExportObjects.Add(expObj);
SPExport export = new SPExport(exportSettings);
export.Run();
}
using (SPWeb web = site.OpenWeb(destinationWebUrl))
{
web.AllowUnsafeUpdates = true;
SPImportSettings importSettings = new SPImportSettings();
web.FileLocation = exportPath;
web.BaseFileName = exportFileName;
web.IncludeSecurity = SPIncludeSecurity.All;
web.UpdateVersions = SPUpdateVersions.Overwrite;
web.RetainObjectIdentity = false;
web.SiteUrl = site.Url;
web.WebUrl = web.Url;
web.Validate();
SPImport import = new SPImport(importSettings);
import.Run();
web.AllowUnsafeUpdates = false;
}
Исключение «Проверка безопасности этой страницы недействительна. Нажмите« Назад »в веб-браузере, обновите страницуи попробуйте снова выполнить операцию. "Вызывается при вызове SPImport.Run ().
Мне не удалось найти решение этой проблемы, ни добавить элемент управления FormDigest на страницу приложения, ни разрешить небезопасные обновления насеть назначения.
Кроме того, запуск этого кода из консольного приложения работает нормально, но если код запускается со страницы приложения, он не работает (даже с повышенной безопасностью).
Любая помощь будет принята.Благодаря.