/// <summary> /// Exports plant site /// </summary> /// <param name="sourceSiteURL"></param> protected void ExportSite(string sourceSiteURL, ArrayList arrMoveSite) { try { SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite site = new SPSite(sourceSiteURL)) { using (SPWeb web = site.OpenWeb()) { SPExportObject exportObject = new SPExportObject(); exportObject.Type = SPDeploymentObjectType.Web; exportObject.Id = web.ID; exportObject.IncludeDescendants = SPIncludeDescendants.All; SPExportSettings settings = new SPExportSettings(); settings.OverwriteExistingDataFile = true; settings.SiteUrl = sourceSiteURL; settings.BaseFileName = EXPORT_FILENAME; settings.ExportMethod = SPExportMethodType.ExportAll; settings.FileLocation = exportFolderName; settings.FileCompression = true; settings.IncludeSecurity = SPIncludeSecurity.All; settings.IncludeVersions = SPIncludeVersions.All; settings.LogFilePath = exportFolderName + web.ID + ".log"; settings.ExcludeDependencies = true; settings.ExportObjects.Add(exportObject); SPExport export = new SPExport(settings); export.Run(); //Display Result arrMoveSite.Add("Site "+web.Url.Substring(web.Url.LastIndexOf("/") + 1) + " has been exported successfully!"); } } }); } catch (Exception ex) { Log(ex, ex.Message); } } /// <summary> /// Imports plant site. /// </summary> /// <param name="destSiteURL"></param> protected void ImportSite(string destSiteURL) { try { SPSecurity.RunWithElevatedPrivileges(delegate() { using (SPSite rootSiteColl = new SPSite(destSiteURL)) { rootSiteColl.AllowUnsafeUpdates = true; using (SPWeb rootWeb = rootSiteColl.OpenWeb()) { rootWeb.AllowUnsafeUpdates = true; SPUtility.ValidateFormDigest(); SPImportSettings importSettings = new SPImportSettings(); importSettings.SiteUrl = rootWeb.Url; importSettings.WebUrl = rootWeb.Url; importSettings.FileLocation = exportFolderName; importSettings.FileCompression = true; importSettings.BaseFileName = EXPORT_FILENAME; importSettings.UserInfoDateTime = SPImportUserInfoDateTimeOption.ImportAll; importSettings.IncludeSecurity = SPIncludeSecurity.All; importSettings.UpdateVersions = SPUpdateVersions.Append; importSettings.LogFilePath = exportFolderName + rootWeb.ID + ".log"; //importSettings.RetainObjectIdentity = false; importSettings.Validate(); SPImport import = new SPImport(importSettings); import.Run(); rootWeb.AllowUnsafeUpdates = false; rootWeb.Close(); } rootSiteColl.AllowUnsafeUpdates = false; } }); } catch (Exception ex) { Log(ex, ex.Message); }