This page describes the process of upgrading the software from 3.0 to 3.1.
- Make a backup of all files in the web folder
- Stop the IIS app pool
- Make a backup of the current database
- Delete the following subfolders from the web application root folder:
Note: If you have made any changes to web files, those changes will need to be re-implemented into the new web files. (See below for more info, if applicable)
- In web.config, set at least these 3 items:
- database connection string
- license key
- SMTP settings
- optionally, any other web.config settings made to the v3.0 web.config file
Note: If you have made any changes to the stored procedures, be sure to back them up separately and re-implement them after running the SQL scripts.
- Restart the IIS app pool
- As soon as the website is started, navigate to the /Account/Logon page. This may take a while to load depending if there are a large number of user accounts to be migrated.
How to merge existing customizations into a new build
To upgrade, you will need to migrate all of your customizations to a fresh installation of the latest version. We recommend using a diff tool that supports a three-way merge such as Beyond Compare 4 Pro from Scooter Software: http://www.scootersoftware.com
With this tool, you click “Folder Merge” from the home screen, then enter the following paths:
- The original build package (“ancestor path”)
- The new build package (“left path”)
- Your modified files (“right path”)
- Optionally, the folder where the results should be copied (“Merge To” path)
This will perform a folder compare with the new build folder on the left hand side and a copy of your current MVC Project files on the right hand side. It is frequently the case that almost all files will have been modified either on one side or the other, so these differences will be handled automatically. Just the changed file will be copied to the result location.
There will inevitably be some cases where the file changed on both sides, and will need to be merged manually. Most of the time it will be obvious which lines need to be copied from each side (e.g. line 10 changed on the left, and line 500 changed on the right, so both changes are assumed to be needed in the result). This process is facilitated by Beyond Compare taking an educated guess of the appropriate changes – you mostly just need to review the recommended merge result and save it.
Rarely, the same line, or lines right next to each other, have been changed on both sides and you have to determine which side is more correct based on the intent of the changes. These situations are highlighted and marked graphically by Beyond Compare to bring your attention to the conflict.
Once all merge conflicts have been handled you can then copy the results to replace your current project, and then re-compile and publish as usual.
If anything goes wrong, to rollback: Restore your backed up database then copy your backup web root back into your production web folder (with overwrite).