The current AspDotNetStorefront software version is: 10.0.0 - 10.0.21, officially released January 14, 2019.
Please don't ever upgrade straight onto your live store. Always use a staging environment to thoroughly test the success of your upgrade. You should also be sensible about timing - do not start an upgrade right before a major marketing push or at the height of your big sales season!
Before beginning the upgrade, you should verify with your host that they are able to run your site under .NET 4.5.2 in IIS7 (4.7.2 for versions 10.0.16+) and that your database is running on SQL Server 2008 or higher. Do not ask them to actually change the .NET version yet, but you need to know that it's possible for them to quickly make that change for the final step of upgrading your site. If you find that your database is on an earlier version of SQL Server, it would be best to have that upgraded on the live site before continuing with the upgrade process.
If your host is unable to meet either of those requirements, you will need to move your current site to another hosting environment before performing the upgrade. Our in-house hosting may be just what you need!
Feature considerations: In addition to the Release Notes, please read the Release Notes (pre-9500) for all versions between your existing version and 10.0.0 - 10.0.21 as you may have customizations that have been addressed and are no longer needed, or a feature you currently use is no longer available "out of the box". It is especially important to verify that the gateway you are using on your older site is still supported before performing the upgrade, as you'll need to start the processing of switching otherwise.
Upgrade Packs: If you are going to use an upgrade pack for your upgrade see Using Upgrade Packs instead.
Outline of the upgrade
Start with a clean installation of the latest version, connected to an upgraded backup of your live site's database.
Transfer your design elements, so that the new version looks familiar.
Upload the latest text that displays on the site.
Install the new license key (versions prior to 10.0.5)
Tidy up a few loose ends.
Test and learn all about the things that changed.
Consider how the new feature-set meets your business needs, and if there are any gaps you will compare the cost of building any custom code afresh on the new version against the cost of 'migrating' earlier custom changes.
Before making any changes to your live site, always ensure that you have a full, working backup of both the contents of the site itself and the database!
If you are using Full-Text Search on your site currently, log into the admin console and turn that off before doing anything else.
If you were encrypting the web.config on the site previously, you will need to log into the admin console, go to the Site Setup Wizard, and change the EncryptWeb.config option to No before starting the upgrade, or those keys will be unreadable. See this page for more information, or if you run into any trouble making that change.
Verify that you are using a payment gateway that is still supported. If you were using a gateway that is no longer supported, you'll need to switch to a supported one. This can be a slow process, so it may be best to hold off on the upgrade until that new account is ready.
Verify with your host that the IIS Rewrite Module is installed on the server.
Start with a clean build
Install the IIS Rewrite Module on the machine you'll be working on the upgrade on. If you had IIS open before starting that install, make sure to close and re-open it before continuing.
Contact your website host to request a backup of your live site files & database. Download both of these backups to the computer you will be performing the test upgrade on. For the rest of the document, this backup copy of your live site will be referred to as the site backup.
Download the new software release from the AspDotNetStorefront Software Downloads page in your license portal and run the file, which will extract the new files to your computer. For the rest of the document, this extracted copy of the new version will be referred to as the new files.
Find the Install Guide that matches the version of Windows you'll be installing the software on. Follow those directions for installing the files and 3rd party software, configuring IIS, etc. When you get to the database portion, instead of creating a new database you will restore the database backup provided by your hosting provider over an empty database created on your machine.
If the AdminDir Setting has been changed on your live site (meaning you access your admin console at something other than yoursite.com/admin), rename the admin folder in the new files to match the name on your live site.
Connect to & Upgrade your Database
Open the web.config file from the site backup you obtained from your host. Copy the EncryptKey value, and paste it into the matching key in the AppSettings.config file in your new files. Note the new file name - this value no longer goes in the web.config!
Find the 'DBConn' line near the top of the ConnectionStrings.config file, and update it to connect to the local database you made in section 1 above. Note that the format of this line changed between earlier versions, so you may not be able to simply copy & paste the old line into the new file. The 'Initial Catalog', 'User Id', and 'Password' values may match those from the site backup's web.config file, but the 'Data Source' will almost certainly be different for your new install. The install guide you used when creating that database earlier can help you figure out what those values should be.
Connect to your local database using SQL Server Management Studio (If you don't have SQL Server Management Studio, you can download the Express version from Microsoft here).
Right-click on the database you restored from a backup earlier, and choose Properties. Click on Options in the left nav, find the option labeled 'Compatibility level', make sure it's set on at least 'SQL Server 2005 (90)', and click OK. If you do not see an option higher than 'SQL Server 2000 (80)' you will need to contact your host and have them upgrade you to a more recent version of SQL Server before continuing with the upgrade
Run scripts from the new files' /db folder against the database you restored earlier. There may be multiple scripts that have to be run, depending on the version you're upgrading from. Run the one that starts with your current site's version and then move through the remaining ones in order (7.0 -> 8.0, 8.0 -> 22.214.171.124, 126.96.36.199 -> 9, etc). When each script completes, you should see a 'Query completed successfully' message at the bottom of the window. If you see 'Query completed with errors', scroll through the results and find any text in red. Copy that and submit a new Help Desk ticket to determine if the errors will be a problem.
As an optional step, perform the Performance Tuning process on the database you just upgraded (if you didn't do it during an earlier upgrade), to verify that it will run successfully on your live site later. This step can take a very long time. If your upgrade is time-sensitive, skip this step for now and it can be done after the rest of the upgrade is completed (see section 8 below).
You will probably want to run the "Skin Path Token Replacement.sql" file from the new files' /db folder. This will update existing topics from your old site that are using older-style skin path tokens to use the newer kind of skin path token. Note that you must change the set @OldSkinId = '' value near the top of the file to specify your old site's skin ID, eg: set @OldSkinId = '1'
Running upgrade scripts requires some proficiency with Microsoft SQL. If you reach this step and you're not sure how to execute SQL scripts, you might benefit from letting AspDotNetStorefront help. Learn More >>
Copy in old Content and Install a License
Copy the contents of the /descriptions, /download, /images, /orderdownloads and /topics (if you have one) folders from the site backup into your new files. If prompted to overwrite a file, click yes.
Delete the .licx file from the /images folder in the new files.
Versions 10.0.5+ can skip the next steps:
Download a new license file from the Licenses tab of the license portal. To do this, click Manage Version on the license for the store you are upgrading and change the drop down to the version you are upgrading to. Click 'OK', then click the 'Retrieve License' link. The new license file will be saved to your computer.
Copy the new license file you just downloaded into the new site's /images folder.
At this point, you have a decision to make:
If you want to start with a fresh skin and take advantage of our new skins that are responsive 'out of the box', jump to the next section. Once the rest of the upgrade is done, you can use the information here to design your new skin.
If you want to reproduce your old skin and you're upgrading from an earlier 9x version, follow these directions and then come back here and continue with the next section.
If you want to reproduce your old skin and you're upgrading from a pre-9x version, follow these directions and then come back here and continue with the next section.
If you're not familiar with this kind of work, skinning can seem a little overwhelming. We have development partners standing by to help. Find a Partner >>
If you have never had a developer do any customization to your site (aside from skinning), you can skip this section. Otherwise, this is the time to get those customizations put into the new files. Some things to keep in mind during this process are:
Do you actually need the customization anymore? Perhaps your business requirements have changed, or we may even have added the feature to the 'out of the box' software!
Is it cheaper to pay a developer to migrate the existing modification from your old site, or should you start over? Sometimes various things like problems getting your code from the old developer, updating the code to account for changes in the 'out of the box' software (when required), changes to your business requirements, etc can make it easier to just start from scratch.
If you're not an experienced developer, we have development partners standing by to help. Find a Partner >>
Finishing Touches & Testing
During this step, you will check various settings on the upgraded site to verify that everything is working as desired. If you have to make any changes, make note of them so that you can quickly do them again on the live site after the final upgrade (step 8 below).
Open the upgraded site in a browser and verify that it starts and that the admin site is accessible.
Log into the admin console and follow the "Reload from Excel file on Server" directions on this page to load the latest prompts on your site. Be sure to select "Leave my modified prompts" AND "Replace Existing". If you have multiple locales or are not using en-US, you may need to rename the new excel files in the /StringResources folder appropriately for your locale before reloading them, and also consider not selecting "Replace Existing" if your localized strings are not all considered "modified strings".
If you are upgrading from a previous 9.x version and are using Avalara, your tax class codes may need adjusting. Verify that the tax class codes under Configuration > Tax Classes are not blank and match the Tax Class Codes in your Avalara account. You can set that code to "FR" for tax classes you do not want Avalara to charge for.
If your skin links to the sitemap, check that the link is correct. Previous versions had a sitemap page named 'sitemap2.aspx', and it is now called 'sitemap.aspx'. Have your developer update that link if necessary.
Due to changes required by the upgrade to .NET 4.5, several email Settings that previously supported comma- or semicolon-delimited lists no longer allow that. Check your MailMe_ToAddress and GotOrderEmailTo AppConfigs, and ensure that they only contain a single email address. If you need emails to go to multiple addresses, check with your email host about distribution groups or mail forwarding rules.
Thoroughly test your site, to ensure that all functions are working as they should be. Product pages, admin functions, credit card processing - everything should be checked just to be safe.
Deploying the Upgraded Site
Once the upgraded site is thoroughly tested and you are satisfied with the upgrade, you are ready to push it live! This can be a long process, and most likely will require some help from your host. Contact them first and verify that they are available and able to assist quickly during the time you're planning to push to the live site, and leave yourself plenty of time. Some of the steps below (especially database-related ones) you will not be able to do yourself in many hosting environments. In those cases, work with your host to get them done, but make sure they happen in the order listed here.
Have your host back up your live site's files and database again, just to be safe.
Verify that your live site's database Compatibility Level is set to at least 2005, as was done in step 3 of section 2 above.
Connect to the live site database and run the "Update 9.0 to 10.0.0.sql" from the new site's /db folder.
Connect to your live site's files through an FTP client and delete all files in the root of your site (your host can help you figure out which folder that is if you're unsure). This step is important, do not simply overwrite the old files.
Upload the new files from the site you set up to the folder you just emptied on your live site.
Update the ConnectionStrings.config file that you just uploaded to the live site, setting the DBConn values to the correct information to connect to your live database. Those values will likely be the same as what is in your old site backup's web.config, but your host can verify that.
Have your host switch the site to run under .NET 4.5.2 (4.7.2 for versions 10.0.16+).
Take your site out of maintenance mode and verify that it starts and looks correct.
After everything on the upgraded site has been tested and verified to be working correctly, there are a few things to do before you should consider the upgrade complete:
Go to Configuration > Site Setup Wizard and switch the Encrypt the web.config option to Yes, then click Save.