November Happy Hour will be moved to Thursday December 5th.

Updating sites with CMO and Live Monitor

This information applies to CMS websites versions 7/7.1/7.5 and higher, that have CMO and Live Monitor installed. If you have these components on your site you need to perform a few additional manual steps after you have applied an updating.

EPiServer CMO can be installed with or without the EPiServer Live Monitor integration. The required manual steps depend on the initial installation. First you need to apply some general manual steps and then one of the three alternative steps.

EPiServer CMO common steps

Several third-party files are part of the CMO module, but they are not included in the CMO NuGet package. These files can be automatically removed after rebuilding the site project in Visual Studio, depending on local configuration. Verify that the following files exist in the site bin folder after upgrading and rebuilding the site project:

- ComponentArt.Silverlight.Server.dll
- ComponentArt.UIFramework.lic
- ComponentArt.Web.Visualization.Charting.dll
- ComponentArt.Web.Visualization.Charting.Shader.dll
- EFExtensions.dll

Missing files can be found in the CMO installation folder, usually it is something like C:\Program Files (x86)\EPiServer\CMS\[CmsVersion]\Install\Modules\CMO[Version]\bin. Make sure that you do not overwrite updated CMO assemblies with older versions.

Add assembly redirects to the sites web.config configuration/runtime/assemblyBinding node for EPiServer CMO assemblies, if redirects do not exist. Note that the new version value should be equal to the actual new version of CMO assemblies:

<dependentAssembly>
  <assemblyIdentity name="EPiServer.Cmo.Cms" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.518.1-[CmoVersion]" newVersion="[CmoVersion]" />
</dependentAssembly>       
<dependentAssembly>
  <assemblyIdentity name="EPiServer.Cmo.Core" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.518.1-[CmoVersion]" newVersion="[CmoVersion]" />
</dependentAssembly>       
<dependentAssembly>
  <assemblyIdentity name="EPiServer.Cmo.Gadgets" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.518.1-[CmoVersion]" newVersion="[CmoVersion]" />
</dependentAssembly>
<dependentAssembly>
  <assemblyIdentity name="EPiServer.Cmo.UI" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.518.1-[CmoVersion]" newVersion="[CmoVersion]" />
</dependentAssembly>

Update the EPiServer CMO Aggregation service:

  1. Open Aggregation service folder, it is normally located at C:\Program Files (x86)\EPiServer\Shared\Services\CMO Aggregation Service\.
  2. Create a new sub folder with the “CMO” prefix and assembly version, for example: CMO7.5.566.0.
  3. Copy EPiServer.Cmo.Core.dll and EFExtensions.dll from the site bin folder to the new folder.
  4. Open the Aggregation service configuration file: C:\Program Files (x86)\EPiServer\Shared\Services\CMO Aggregation Service\EPiServer.Cmo.AggregationService.exe.config.
  5. Locate the configuration/cmoAggregationService/cmoInstances node and create a new Add entry:
          <add assemblyPath="CMO7.5.566.0">
            <connectionStrings>
            </connectionStrings>
          </add>
  6. Locate the old Add entry with connection string to your site, and move the connection string inside the connectionStrings node of the new entry.

Refer to Installing and configuring the aggregation service for more information.

Option 1: EPiServer CMO installed without Live Monitor

After applying the update, remove the following assemblies from the site \bin folder:

  • EPiServer.Cmo.Trace.dll
  • EPiServer.Trace.dll
  • EPiServer.Trace.CMS.dll
  • EPiServer.Trace.UI.dll
         

Option 2: EPiServer CMO installed with Live Monitor but without Live Monitor integration

After applying the update, remove the following assembly from the site \bin folder:

  • EPiServer.Cmo.Trace.dll
       

Option 3: EPiServer CMO installed with Live Monitor and Live Monitor integration

Add assembly redirects to the sites web.config configuration/runtime/assemblyBinding node for EPiServer CMO and Live Monitor assemblies, if redirects do not exist. Note that the new version values should be equal to the actual new version of CMO and Live Monitor assemblies.

<dependentAssembly>
  <assemblyIdentity name="EPiServer.Cmo.Trace" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.518.1-[CmoVersion]" newVersion="[CmoVersion]" />
</dependentAssembly>
<dependentAssembly>
  <assemblyIdentity name="EPiServer.Trace.UI" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.1267.216-[LMVersion]" newVersion="[LMVersion]" />
</dependentAssembly>
<dependentAssembly>
  <assemblyIdentity name="EPiServer.Trace" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.1267.216-[LMVersion]" newVersion="[LMVersion]" />
</dependentAssembly>
<dependentAssembly>
  <assemblyIdentity name="EPiServer.Trace.CMS" publicKeyToken="8fe83dea738b45b7" culture="neutral" />
  <bindingRedirect oldVersion="7.0.1267.216-[LMVersion]" newVersion="[LMVersion]" />
</dependentAssembly>