Import and export


List of examples:

Import

Importing an object



// Creates an object containing the import settings
SiteImportSettings settings = new SiteImportSettings(MembershipContext.AuthenticatedUser);

// Initializes the import settings
settings.SourceFilePath = "Packages\\APIExample_User.zip";
settings.ImportType = ImportTypeEnum.AllNonConflicting;
settings.LoadDefaultSelection();

// Imports the package
ImportProvider.ImportObjectsData(settings);

// Deletes temporary data
ImportProvider.DeleteTemporaryFiles(settings, false);

> Back to list of examples

Importing a site



// Prepares the site import parameters
string websitePath = System.Web.HttpContext.Current.Server.MapPath("~/");
string sourceFilePath = "Packages\\APIExample_Site.zip";
string siteDisplayName = "Imported site";
string siteName = "ImportedSite";
string siteDomain = "127.0.0.1";

// Verifies that the system does not already contain a site with the given name
if (SiteInfo.Provider.Get(siteName) == null)
{
    // Imports the site
    ImportProvider.ImportSite(siteName, siteDisplayName, siteDomain, sourceFilePath, websitePath, MembershipContext.AuthenticatedUser);
}

> Back to list of examples

Export

Exporting an object (user)



// Deletes temporary export files
try
{
    ExportProvider.DeleteTemporaryFiles();
}
catch
{
}

// Gets the user
UserInfo exportedUser = UserInfo.Provider.Get("Username");

// Ensures that the user exists
if (exportedUser != null)
{
    // Prepares the export parameters
    string websitePath = System.Web.HttpContext.Current.Server.MapPath("~/");
    string exportFileName = string.Format("APIExample_User_{0:yyyy-MM-dd_hh-mm}.zip", DateTime.Now);
    string exportFilePath = FileHelper.GetFullFilePhysicalPath(ImportExportHelper.GetSiteUtilsFolder(), websitePath) + "Export\\" + exportFileName;

    // Verifies that an export package with the given name doesn't already exist
    if (!File.Exists(exportFilePath))
    {
        // Exports the user object
        ExportProvider.ExportObject(exportedUser, exportFilePath, websitePath, MembershipContext.AuthenticatedUser);
    }
}

> Back to list of examples

Exporting a site



// Deletes temporary export files
try
{
    ExportProvider.DeleteTemporaryFiles();
}
catch
{
}

// Prepares the export parameters
string websitePath = System.Web.HttpContext.Current.Server.MapPath("~/");
string exportFileName = string.Format("APIExample_Site_{0:yyyy-MM-dd_hh-mm}.zip", DateTime.Now);
string exportFilePath = FileHelper.GetFullFolderPhysicalPath(ImportExportHelper.GetSiteUtilsFolder(), websitePath) + "Export\\" + exportFileName;
string siteName = "ImportedSite";

// Verifies that the site exists
if (SiteInfo.Provider.Get(siteName) != null)
{
    // Verifies that an export package with the given name doesn't already exist
    if (!File.Exists(exportFilePath))
    {
        // Exports the site
        ExportProvider.ExportSite(siteName, exportFilePath, websitePath, false, MembershipContext.AuthenticatedUser);
    }
}

> Back to list of examples

Deleting export packages from the file system



// Prepares package parameters
string websitePath = System.Web.HttpContext.Current.Server.MapPath("~/");
string exportPath = FileHelper.GetFullFolderPhysicalPath(ImportExportHelper.GetSiteUtilsFolder(), websitePath) + "Export\\";
string filesToDelete = @"APIExample*.zip";

// Gets a list of export packages
string[] fileList = Directory.GetFiles(exportPath, filesToDelete);

// Deletes the files
foreach (string file in fileList)
{
    try
    {
        File.Delete(file);
    }
    catch
    {
        // Deletion was unsuccessful
    }
}

> Back to list of examples