Try our conversational search powered by Generative AI!

Views: 13068
Number of votes: 2
Average rating:

Upgrading Create+ from Version 1.1 to 2.0

This article describes an example of how to upgrade a Create+ site from version 1.1 to 2.0. The Create+ package contains a number of products integrated with EPiServer CMS, and the upgrading sequence as well as the steps to upgrade each product are described.

Table of Content


Create+ is a commercial package for EPiServer CMS, with a set of products allowing for editors to work with all aspects of creating dynamic websites, including page layouts, newsletter send-outs and image management and flash content. The Create+ package contains the products EPiServer Mail, EPiServer Composer, EPiTrace (Live Monitor), ImageVault and Interactive Scene.

Product version overview for Create+

ProductCreate 1.1Create 1.2Create 2.0
EPiServer CMS  5 R2 SP1 5 R2 SP2  6.0
EPiServer Mail  4.4 4.4.SP1  5.0
EPiServer Composer  3.2.5 3.2.6  4.0
EPiTrace/Live Monitor  1.3 1.3  2.0
ImageVault  3.2.2 3.3.3  3.4 (32/64 bit)
Interactive Scene  1.3.1 1.3.2  1.3.2


The website in this example is running in the following environment:

  • Microsoft Windows Server 2003 SP2 32 bit
  • Microsoft Internet Information Services (IIS) 6.0
  • Microsoft SQL Server 2005 SP2 32 bit
  • Microsoft .NET Framework 3.5 SP1

The upgrading procedure described here is divided into two parts:

  • Part 1 - Upgrading from Create+ version 1.1 to 1.2
  • Part 2 - Upgrading from Create+ version 1.2 to 2.0

The various steps are described in detail in the following.

Upgrading Create+ from version 1.1 to 1.2

In this step, EPiServer CMS, EPiServer Composer, EPiServer Mail, ImageVault and Interactive Scene will be upgraded. EPiTrace will be removed and replaced by Live Monitor, which is EPiTrace based on Silverlight, which is optionally included as part of CMS 6.

Starting conditions

The starting point scenario here is a site with CMS 5 R2 SP 1 with public and demo templates installed, and with the modules that are part of the Create+ 1.1 package (EPiServer Composer, EPiServer Mail, ImageVault, Interactive Scene and EPiTrace). The site has previously been upgraded from Create+ 1.0, see instructions for upgrading Create+ from 1.0 to 1.1.

Before upgrading I did the following:

  • Created a backup of the website in case I needed to start from scratch again.
  • Downloaded the new versions of EPiServer CMS (5) and the different modules to the Deployment Center. Files and instructions for download of the different modules are found in the EPiServer CMS 5 Compatibility matrix.

Upgrading sequence

I started by removing EPiTrace, then I upgraded EPiServer CMS and then the modules. Finally I tested everything to ensure there were no errors.

1. Removing EPiTrace

I chose to start by removing EPiTrace completely before I started the upgrade itself. EPiTrace is replaced by Live Monitor in EPiServer CMS 6, so I won’t need it anymore. I believe it’s good to remove it early in the upgrading process to avoid errors later.


  • EPiTrace page type
  • EPiTrace page
  • EPiTrace folder in the site root
  • EPiTrace table [dbo.EPiTraceLiveData] from the database
  • EPiTrace.dll in the bin folder

Remove the following in web.config:

<system.web><httpModules><add name="KeepIdForEPiTrace" type="EPiTrace.KeepIdForDataHandler,EPiTrace" />
<system.webServer><modules><add name="KeepIdForEPiTrace" type="EPiTrace.KeepIdForDataHandler,EPiTrace" preCondition="managedHandler" />
<assemblyIdentity name="EPiTrace" publicKeyToken="" culture="neutral" />
<bindingRedirect oldVersion="" newVersion="" />


2. Upgrading EPiServer CMS 5 from R2 SP1 to R2 SP2

Please refer to the installation instructions for EPiServer CMS 5 R2 SP2 for information on how to upgrade.

After the upgrade you most certainly will get the warning: "This page is not available for the active language". This is a known EPiServer CMS bug (#26280) and the solution is to apply a hotfix from EPiServer Support or to upgrade to CMS 6. I didn't apply the hotfix because I'm going to upgrade to CMS 6 and the bug is fixed there.


3. Upgrading EPiServer Composer from 3.2.5 to 3.2.6

Please refer to the tech note Upgrading EPiServer Composer from 3.2.5 to 3.2.6

Possible errors and issues after upgrading:

"Could not load file or assembly 'Dropit.Extension' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)..." etc. To solve it, in web.config you'll need to change 'newVersion' references to Dropit.Extension and Dropit.Extension.UI:

<assemblyIdentity name="Dropit.Extension" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
<bindingRedirect oldVersion="" newVersion="" />
<assemblyIdentity name="Dropit.Extension.UI" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
<bindingRedirect oldVersion="" newVersion="" />


"Invalid type for property 'ContainerPageProperty" on page 2672. Expected Dropit.Extension.SpecializedProperties.ContainerPageProperty."

Solution: In Admin mode, go to Page Type/Page Type  [ExtensionSys] Extension Container/ContainerPageProperty and change 'Type' from 'Extension Container Page Property' to 'ExtensionContainerProperty'.


"Parser Error: The type 'DropIT.Modulwebb.WebUI.Functions.YouTube.YouTubeLinkBlock" is ambiguous: it could come from assembly 'C:\~\SiteRoot\bin\EPiServer.Templates.Public.DLL' or from assembly 'C:\~\ SiteRoot \bin\EPiServer.ComposerSampleTemplates.DLL'. Please specify the assembly explicitly in the type name."

A solution is to change namespace in one of the YouTubeLinkBlock.ascx and .cs files.


4. Upgrading EPiServer Mail from 4.4 to 4.4 SP1

Done by installing EPiServer Mail version 4.4 SP1. Please refer to the download of EPiServer Mail 4.4 SP1

EPiServer CMS and EPiServer Mail share the same database, so upgrading is straigth forward and no errors were detected here.


5. Upgrading ImageVault from 3.2.2 to 3.3.3

Upgrading is done through installing the new version. Please refer to the Installation Manual for Image Vault 3.3.3. No errors were detected in this process.


6. Upgrading Interactive Scene from 1.3.1 to 1.3.2

The upgrading is done by installing the new version Interactive Scene 1.3.2. Please refer to the Installation Instructions for Interactive Scene 1.3.2

You may receice the following error message after upgrade:

"Could not load file or assembly 'Obg.InteractiveScene.CMS5, Version=, Culture=neutral, PublicKeyToken=d7fb29bd262c7c82' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)."

The solution is to add the missing assembly Obg.InteractiveScene.CMS5 to your project and compile. I also found three other missing assemblies that I included at the same time in the project: Dropit.Extension.dll, ImageStoreNET.dll and ImageVaultOfficeData.dll.


Upgrading Create+ from version 1.2 to 2.0

This is the second part of the Create+ upgrade. In this procedure, EPiServer CMS, EPiServer Composer, EPiServer Mail and ImageVault will be upgraded. For Interactive Scene, the same version (1.3.2) is used in both Create+ 1.2 and 2.0. EPiTrace was removed in the previous steps, and Live Monitor will be installed instead.


Starting conditions

The starting point now is a site with EPiServer CMS 5 R2 SP2 with public and demo templates installed, and with all the modules that are included in the Create+ 1.2 package (see Introduction above).


Before upgrading

Before this part of the upgrading I did the following:

  • Created a backup of the website in case I needed to start from scratch again.
  • Downloaded the new versions of EPiServer CMS (6) and the different modules to the Deployment Center. Files and instructions for downloading are found in the EPiServer CMS 6 Compatibility matrix.

Upgrading sequence

I started by upgrading EPiServer CMS, continued by installing LiveMonitor, and then I upgraded EPiServer Composer, ImageVault and EPiServer Mail, in that order. Finally I tested the site to ensure there were no errors.


1. Upgrading EPiServer CMS from 5 R2 SP2 to 6.0

Refere to the upgrading instructions in the Installation Instructions for EPiServer CMS 6.0.

I didn't install the new public or demo templates since I chose to use the templates that already existed on the website.

Possible errors and issues after upgrading:

  • After the upgrade I wasn't able to see 'Create new page', 'Delete selected page', 'Open action window' etc. Running Fiddler I found a HTTP 404 type error and that /App_Themes/Default/Images/Tools/SpriteTools.png was missing.
    The image is found in C:\Program Files\EPiServer\CMS\6.0.530.0\Application\App_Themes\Default\ Images\ Tools\SpriteTools.png. A solution is to copy it to C:\~\SiteRoot\App_Themes\Default\Images\Tools\SpriteTools.png.
  • To get rid of the following two errors, remove System.Web.Extensions.dll (Version 1.0.61025.0, File version 1.0.61231.0) from bin:
    [HttpException (0x80004005): The type 'System.Web.UI.ScriptManager' is ambiguous: it could come from assembly 'C:\EPiServer\Sites\test\bin\System.Web.Extensions.DLL' or from assembly 'C:\WINDOWS\assembly\GAC_MSIL\System.Web.Extensions\\System.Web.Extensions.dll'. Please specify the assembly explicitly in the type name.]
    System.Web.Compilation.CompilationUtil.GetTypeFromAssemblies(AssemblyCollection assembliesCollection, String typeName, Boolean ignoreCase) +361
    System.Web.Compilation.BuildManager.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase) +291
    System.Web.UI.Page.get_ScriptManagerType() +44
    System.Web.UI.Page.get_IsPartialRenderingSupported() +61
    System.Web.UI.WebControls.ValidationSummary.OnPreRender(EventArgs e) +257
    System.Web.UI.Control.PreRenderRecursiveInternal() +80
    System.Web.UI.Control.PreRenderRecursiveInternal() +171
    System.Web.UI.Control.PreRenderRecursiveInternal() +171
    System.Web.UI.Control.PreRenderRecursiveInternal() +171
    System.Web.UI.Control.PreRenderRecursiveInternal() +171
    System.Web.UI.Control.PreRenderRecursiveInternal() +171
    System.Web.UI.Conitrol.PreRenderRecursiveInternal() +171
    System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +842

    Or this Compilation error message (same issue as previous):
    Compilation Error Description: "An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
    Compiler Error Message: CS0433: The type 'System.Web.UI.ScriptManager' exists in both 'c:\WINDOWS\Microsoft.NET\framework\v2.0.50727\Temporary ASP.NET Files\root\39f22255\d8b5c3d0\assembly\dl3\d99aee6c\0078d58d_ab3cc701\System.Web.Extensions.DLL' and 'c:\WINDOWS\assembly\GAC_MSIL\System.Web.Extensions\\System.Web.Extensions.dll' Source File: c:\WINDOWS\Microsoft.NET\framework\v2.0.50727\Temporary ASP.NET Files\root\39f22255\d8b5c3d0 App_Web_masterpage.master.d95699b7.lozvwlvt.0.cs Line: 342"
  • TinyMCE
    An upgraded site will use the Legacy editor for compatibility reasons. If you want to use the TinyMCE editor just search for “LegacyPropertyXhtmlStringControl” in web.config and comment out or remove these lines:
    <register type="EPiServer.SpecializedProperties.PropertyXhtmlString, EPiServer"mappedType="EPiServer.Web.PropertyControls.LegacyProperty
    XhtmlStringControl, EPiServer" />
    <register type="EPiServer.Core.PropertyLongString, EPiServer" mappedType= "EPiServer.Web.PropertyControls.LegacyPropertyXhtmlStringControl, EPiServer" />


2. Installing Live Monitor

Live Monitor is an optional part of EPiServer CMS 6. To install, please refer to the Installation Instructions for Live Monitor. In this case there were no issues installing Live Monitor, but configuration might be needed in some cases for the module to work properly, see the installation instructions for more information.


3. Upgrading EPiServer Composer from 3.2.6 to 4.0

For upgrading details, please refer to the tech note Upgrading EPiServer Composer from 3.2.6 to 4.0

Possible errors and other issues after upgrading:

  • I got an error in the IE8 status bar that made Composer unusable: 'Sys is undefined'.
    Ted Nybergs blog post on this issue can help make the correct settings in web.config if you're using IIS7. Using IIS6, I had to remove an old reference to make it work:
    <add verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false" />
  • To be able to view EPiServer Composer page types and templates in Edit mode when creating a new page, I had to make sure that the virtual path was correct in web.config
    <add url="~/UI/CMS/edit/newpage.aspx" mappedUrl="~/Dropit/Plugin/Extension/UI/Edit/ExtensionNewPage.aspx" />
    I also had to add this line which was missing:
    <add url="~/UI/CMS/admin/editpagetypebase.aspx" mappedUrl= "~/dropit/plugin/extension/ui/admin/extensioneditpagetype.aspx" />


4. Upgrading ImageVault from 3.3.3 to 3.4

To upgrade ImageVault, please refer to the Installation Manual for ImageVault 3.4 (32 bit).

Possible errors and issues after upgrading:

  • To get rid of the error below, remove ImageVault.EPiServer5.dll from bin:
    ImageVault Exception:
    Exception Details: System.Reflection.ReflectionTypeLoadException: Unable to load one or more of the requested types. The following information may be a subset of the Type/LoaderException information present - inspect with debugger for complete view.
    Check assemblies [ImageVault.EPiServer5, Version=, Culture=neutral, PublicKeyToken=null] and/or types [ImageStoreNET.Developer.WebControls.IVFileListData,
    ImageStoreNET.Developer.WebControls.IVAlbumTree]. Information from LoaderExceptions property [Method 'IsPageDeleted' in type 'ImageVault.EPiServer5.PageImpl' from assembly
    'ImageVault.EPiServer5, Version=, Culture=neutral, PublicKeyToken=null' does not have an implementation.,
    Method 'BaseDirectory' in type 'ImageVault.EPiServer5.ConfigImpl' from assembly 'ImageVault.EPiServer5, Version=, Culture=neutral, PublicKeyToken=null' does not have an implementation.,
    Method 'ValidateUser' in type 'ImageVault.EPiServer5.SecurityImpl' from assembly 'ImageVault.EPiServer5, Version=, Culture=neutral, PublicKeyToken=null' does not have an implementation.].
  • After ImageVault.EPiServer5.dll has been removed you might get this error:
    "Could not load file or assembly 'ImageVault.EPiServer5' or one of its dependencies. The system cannot find the file specified.(C:\~\SiteRoot\web.config line 648)
    Line 648: <add name="ImageVault" type="ImageStoreNET.PluginStartup, ImageVault.EPiServer5" />"
    The solution is to remove this in web.config
    <add name="ImageVault" type="ImageStoreNET.PluginStartup, ImageVault.EPiServer5" />
  • Remove old ImageVault references in web.config:  
    <assemblyIdentity name="ImageVault.Core" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="" />

    <assemblyIdentity name="ImageVault.EPiServer5" publicKeyToken="" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="" />

    <assemblyIdentity name="ImageVaultDemoTemplates" publicKeyToken="" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="" />

    <assemblyIdentity name="ImageVaultOfficeData" publicKeyToken="" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="" />

    <assemblyIdentity name="ImageStoreNET" publicKeyToken="" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="" />

    <add name="ImageVault" type="ImageStoreNET.PluginStartup, ImageVault.EPiServer5" />

    <add name="ImageVault" type="ImageStoreNET.PluginStartup, ImageVault.EPiServer5" />
  • To make Image Vault services (e.g. AjaxAdminBaseService.asmx) and ImageVault to work, remove:   
    <add verb="*" path="*.asmx" validate="false" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
  • UploadView.cs - change using directive:    
    using System;
    using EPiServer;
    using ImageVault.EPiServer6; //instead of ImageVault.EPiServer5;
    using ImageStoreNET.Developer;
    using ImageStoreNET.Developer.Core;
    using ImageStoreNET.Developer.WebControls;
  • Since ImageVault.EPiServer5.dll is replaced by ImageVault.EPiServer6.dll, changes need to be done in Search.aspx, ImageRoller.aspx, ImageGallery.aspx, ImageUpload.aspx, ImageList.aspx, AlbumImageList.ascx and AlbumMenu.ascx.

    Change from: <%@ Register TagPrefix="ImageVault" Namespace="ImageStoreNET.Developer.WebControls" Assembly="ImageVault.Episerver5" %>
    to: <%@ Register TagPrefix="ImageVault" Namespace="ImageStoreNET.Developer.WebControls" Assembly="ImageVault.Episerver6" %>
  • MeridiumEPiServerLinkEditor, used in the Legacy editor, stopped working with several error messages. I didn't try to find a solution because my plan was to use the TinyMCE editor with the Meridium link tool, which worked perfectly.


5. Upgrading EPiServer Mail from 4.4 SP1 to 5.0

I used the instructions from upgrading Create from 1.0 to 1.1 (EPiServer Mail section), but with some modifications. As mentioned previously, EPiServer CMS and Mail share the same database. Before the upgrade, I saved a copy of EPiSeverMail.config, which I later used to replace the new EPiServerMail.config when the upgrade was done.


Remove the folder EPiServer Mail from the site root. From the bin folder remove all assemblies containing common and mail.

Download the database migration package for EPiServer Mail and Community, which contains the two scripts that will be used; Drop Relate tables.sql and migration_tool.sql.

Copy the Mail database (db1) to a new database (db2). In db1 delete all tables and stored procedures containing the name Common and Mail using the script Drop Relate tables.sql.

Install EPiServer Mail from the EPiServer Deployment Center. Select db1 as the database (the new database tables will be placed there). I didn't select the Community Integration option (as this is not an EPiServer Community upgrade).

Use the migration_tool.sql to migrate data from db2 to db1. Set the global variables in the script before running it:
yes = 1, no = 0:
SET @strSourceDB = '[db2]' - the source database
SET @strTargetDB = '[db1]' - the target database
SET @bitMigrateCommunity = 0 - I'm not migrating Community
SET @bitMigrateMail = 1 - I'm migrating Mail
SET @bitDebug = 1 - to be able to see debug info
SET @bitRestoreRelatePlusData = 0 - I'm not migrating Relate+
You’ll find information about the migration in the tech note Migrating EPiServer Community and EPiserver Mail (see Migrating the Database).

Web.config / EPiServerMail.config
There are some manual changes that needs to be done. Also make sure you have the correct settings here.

  • The following assemblies should be removed from <runtime><assemblyBinding> and from the bin folder as well:   
    <assemblyIdentity name="EPiServer.Common.Replication" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="2.3.517.36" />

    <assemblyIdentity name="EPiServer.Common.Security.Internal" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="2.3.517.36" />

    <assemblyIdentity name="EPiServer.Common.Services.Replication.Shared" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="2.3.517.36" />

    <assemblyIdentity name="EPiServer.Common.Services.Replication.Subscriber" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="2.3.517.36" />

    <assemblyIdentity name="EPiServer.Wsrp" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="5.2.375.236" />

    <assemblyIdentity name="EPiServer.Mail.Install" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="4.4.343.20" />
  • Remove duplicated hibernate element: 
    <hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
    <mapping assembly="EPiServer.Common.Framework.Impl" />
  • All site host configuration is now based on <episerver.framework>< siteHostMapping> and <episerver.common><siteHosts> must be removed: 
    <add name="Default" hostUrl="*" connectionStringName="EPiServerCommon" />
  • <episerver.common><siteHosts><add connectionStringName> is changed to: 
    <episerver.common><sites><site connectionStringName>  
  • <episerver.common><sites><site hostName> is changed to:
    <episerver.common><sites><site siteId>:
    <site siteId="*" connectionStringName="EPiServerCommon">
  • <episerver.common><sites><site><security defaultPasswordProvider> is changed to: 
    <security defaultProvider="CleartextPasswordProvider" anonymousGroupId="2">
    <add name="CleartextPasswordProvider" type="EPiServer.Common. Security.CleartextPasswordProvider, EPiServer.Common.Security" />

    <add name="HMACMD5PasswordProvider" type="EPiServer.Common. Security.HMACMD5PasswordProvider, EPiServer.Common.Security" />

    <add name="HMACPasswordProvider" type="EPiServer.Common. Security.HMACPasswordProvider, EPiServer.Common.Security" />

    <add name="HMACSHA256PasswordProvider" type="EPiServer.Common. Security.HMACSHA256PasswordProvider, EPiServer.Common.Security"/>
  • <episerver.common><sites><site><replication> has been removed; this is now handled using the EPiServer Events system and is set up in the related WCF configuration. Remove:
    <subscriber serverName="myWebServer1" siteName="mySite" port="0" alternatePort="0" broadcastAddress="" />
  • <episerver.common><sites><site><integration><session> has been removed. Remove:
    <session sessionTimeout="00:20:00" timeoutCheckInterval="00:01:00" /> 
  • <episerver.common><sites><site><integration><rolesToSynchronize> is new, add:
    <add name="*" />
  • <episerver.common><sites><site><integration><rolesToTransfer> is new, add:
    <add name="*" />
  • <episerver.common><sites><site><syndication> is new, add:
    <syndication viewModeUriProviderName="RelatePlusProvider" resourceUriProviderName="resources" feedUriProviderName= "RelatePlusFeedUriProvider" /> 
  • <episerver.common><sites><site><uri> is new, add:
    <uri defaultProvider="null"><providers><add name="null" type="EPiServer.Common.Uri.UriProviderHandler+NullUriProvider, EPiServer.Common.Framework.Impl" /></providers></uri> 
  • <episerver.common><sites><site><eventCounter> is new, add:
    <eventCounter active="true">
    <add action="Add" name="UserAdded" groupName="User" type="EPiServer.Common.Security.SecurityHandler, EPiServer.Common.Security" event="CreatedUser" instanceMethod="get_Instance" />

    <add action="Remove" name="UserRemoved" groupName="User" type="EPiServer.Common.Security.SecurityHandler, EPiServer.Common.Security" event="RemovedUser" instanceMethod="get_Instance" />
  • <> is new, add: 
    < active="false">
    <namedIndexingServices defaultService="">
    <!--<add name="{serviceName}" baseUri="{indexingServiceBaseUri}" accessKey="{accessKey}"/>-->
    <searchResultFilter defaultInclude="true">
    <providers />
  • In EPiServerMail.config
    <episerver.mail><sites><site hostName ="Default">  is changed to: 
    <episerver.mail><sites><site siteId="*">

Related information

Download EPiServer CMS

Download Create+ products

Documentation for EPiServer CMS

Documentation for Create+


Go to top of document


Nov 26, 2010 03:04 PM

Nice work.

Please login to comment.