Upgrading to Litium 6

This section describes how to upgrade to Litium 6.

If you are upgrading from a version before Litium 5, you need to be aware of additional instructions on upgrading to Litium 5, in addition to information presented in this section.

What's new?

Litium 6 is a major version and includes a number of larger structural changes. For a succesful upgrade to Litium 6, it is recommended to learn more about:

Upgrade the Litium platform

Upgrading the database

Before taking any further steps, make sure you have a back up of your database and any other files. Also make sure you have taken all precautions necessary to be able to roll back the upgrade procedure.

Use the upgrade scripts to upgrade from any previous version to Litium 6.

Detailed instructions on upgrading the platform

Upgrade your solution

Binding redirects

If there are custom assemblies that are compiled with older versions of Litium, they may still work with a newer version of Litium, provided there are no breaking changes.

However, if correct binding redirects are not added, you may get run time errors after upgrading.

Usually these errors occur because the correct version of the Litium assembly can not be not found.

There may also be an error message about not finding a method implementation, for example "Method x in type T in assembly A with public key token xxxx does not have an implementation".

To let the old assemblies work with newer versions binding redirects need to be added. Visual studio may be adding these binding redirects automatically.

A typical warning in Visual Studio in the above case would look as follows. Double clicking the warning automatically resolves the binding redirects. If you don't resolve the binding redirects a run time error will occur.

build warning.png

Web controls

All Litium web controls have been updated to run against the Litium 6 API, so in most cases you just have to replace the old web controls with the new ones delivered with Litium 6. 

New API for Customers and Media

The new API that was introduced for the Products area with Litium 5 has been expanded and now also covers the areas Customers and Media. The rest of the areas, Dashboard, Websites and Sales use the same API as in 4.8.

Any code that handles entities in the areas Customers and Media needs to be reviewed and adjusted to work with the new API. Examples of entities in these areas are Persons, Groups and File.

Learn more about the new API

Field framework

The new field framework that was introduced for products and categories in Litium 5 has now been implemented for Customers and Media. The rest of the platform still uses the old field framework. 

One of the advantages of the new field framework is the possibility to define custom field types. This eliminates the need to create entity panels, that had to be done through an extension in Litium 4.8.

Creating a custom field type