This articles provides a list with best practices for upgrading Sitefinity.
During the upgrade process, Sitefinity CMS Project Manager replaces the assembly files in your bin folder with the ones corresponding to the newer Sitefinity CMS version. After assemblies are modified, Sitefinity’s upgrade scripts execute for the first time once you start your application. As a result, the upgrade scripts upgrade the database.
The best practices provide directions for simplifying and validation the upgrade process. We recommend that you perform the following every time you upgrade Sitefinity.
- After the Project Manager finishes the upgrade procedure, it generates an UpgradeTrace.log file in your App_Data/Sitefinity/Logs folder.
We recommend that you examine this file and make sure all processes are executed successfully. In some cases, some processes may fail due to various reasons. Failure may be a result of processes in the Project Manager and the machine running the upgrade procedure. If there are any processes with status FAILED, revert to backup and run the upgrade procedure once more.
- Since the Project Manager upgrades only Sitefinity’s assemblies, all external projects and assemblies that use Sitefinity’s .dll files are not updated. Therefore, it is a good practice to adjust the references or add bindingRedirtects for any custom implementation that might be referencing a different version of Telerik assemblies than the one that you are upgrading to. We recommend to reference these assemblies from Sitefinity CMS project's bin folder. As a result, when you upgrade a Sitefinity CMS project through the Project Manager, the assemblies are automatically replaced with the new ones and all projects referencing their Telerik assemblies from the bin folder, will reference the new assemblies.
- If you have not customized your web.config file, you can safely replace it with the newer version, taken from the empty project. This newer file contains all new functionality. As of Sitefinity CMS 5.4, the Project Manager enables you to automatically update the web.config file when upgrading a project.