Sitecore 8.0 to 8.1 Migration

The following includes a set of steps to migrate a Sitecore 8.0 instance to Sitecore 8.1.

Migration Steps Summary

As Sitecore 8.1 contains embedded switcher between Shared and Final Layout, SCORE one is not needed anymore.


Please remove items from Core database:

  • /sitecore/content/Applications/WebEdit/Ribbons/Chunks/Modes/Layout
  • /sitecore/content/Applications/WebEdit/Menus/Edit Layout (with subitems)

Custom MVC Route registration

Sitecore 8.1 introduced its own way of MVC Areas registration. Because we don't want to duplicate functionality provided by Sitecore we decided to disable SCORE logic of mvc areas (and mvc routes) registration for Sitecore 8.1.

And it works ok for all routes which are rendered as a ChildReguest and routes which are not required for an SitecoreContext to be loaded and Sitecore's specific parameters be processed (e.g scItemPath).
But if you still need to be loaded within SitecoreContext you should update your logic of custom route registration with just one line of code:

Route Registration
var customRoute = context.MapRoute("myCustomRoute", "myRoute/{*scItemPath}", new
{
    controller = "MyCustom",
    action = "Submit",
    scItemPath = "{*scItemPath}"
});
customRoute.RouteHandler = new Sitecore.Mvc.Routing.RouteHandlerWrapper(customRoute.RouteHandler);

Line #7 has a wrapper which is used by Sitecore to load SitecoreContext. So just use it whenever your Controller depends on SitecoreContext.