SharePOint 2010 编程导入导出站点

/// <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);
            }

 

转载于:https://www.cnblogs.com/ahghy/archive/2013/01/28/2879644.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值