Upgrading from 1.5.1 to 1.6 on Windows azure website preview

Topics: Administration
Dec 11, 2012 at 10:49 PM

Hey everyone,

I want to upgrade my live website which is hosted on azure website preview to 1.6

What is the best way I can do that? Do i first need to update my source code in visual studio and then republish the site or can I run something on the site which will upgrade it?

Kind regards,


Dec 12, 2012 at 7:51 AM

I would read this: http://docs.orchardproject.net/Documentation/Upgrading-a-site-to-a-new-version-of-Orchard

Dec 12, 2012 at 8:01 AM


Thanks, I'll give it a go, do you know if the upgrade process will be simplified in the future?

Also, I'm working with the full source code, how can I get the Enlistment to work?


Dec 12, 2012 at 8:09 AM
Edited Dec 12, 2012 at 8:09 AM

You're welcome.

Yes, it will be a whole lot better in the future. For now we need the pain to be motivated enough to do it at some point ;)

To get source code Enlistment to work, simply download and install the TortoiseHG Mercurial client for Windows: http://tortoisehg.bitbucket.org/download/index.html

Once installed, clone the following url (right click on an empty folder on your HD, choose "TortoiseHG -> Clone): https://hg.codeplex.com/orchard

For detailed instructions, checkout this page: http://codeplex.codeplex.com/wikipage?title=Using%20TortoiseHG%20with%20CodePlex&referringTitle=Source%20control%20clients&ProjectName=codeplex

Dec 12, 2012 at 9:31 AM


I've updated my source code, copied the appdata, media, themes and created modules...

Now I get this error:

Server Error in '/OrchardLocal' Application.

Object reference not set to an instance of an object.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.

Source Error:

Line 174:            // because a pre-compiled module usually references a pre-compiled assembly binary
Line 175:            // which will have a different identity (i.e. name) from the dynamic module.
Line 176:            bool result = references.All(r => r.Loader.GetType() != typeof(DynamicExtensionLoader));
Line 177:            if (!result) {
Line 178:                Logger.Information("Extension \"{0}\" will not be loaded as pre-compiled extension because one or more referenced extension is dynamically compiled", extension.Id);

Source File: c:\Tortoise\src\Orchard\Environment\Extensions\Loaders\PrecompiledExtensionLoader.cs    Line: 176

Stack Trace:

[NullReferenceException: Object reference not set to an instance of an object.]
   Orchard.Environment.Extensions.Loaders.PrecompiledExtensionLoader.<IsCompatibleWithModuleReferences>b__1e(ExtensionProbeEntry r) in c:\Tortoise\src\Orchard\Environment\Extensions\Loaders\PrecompiledExtensionLoader.cs:176
   System.Linq.Enumerable.All(IEnumerable`1 source, Func`2 predicate) +140
   Orchard.Environment.Extensions.Loaders.PrecompiledExtensionLoader.IsCompatibleWithModuleReferences(ExtensionDescriptor extension, IEnumerable`1 references) in c:\Tortoise\src\Orchard\Environment\Extensions\Loaders\PrecompiledExtensionLoader.cs:176
   Orchard.Environment.Extensions.<>c__DisplayClassc.<ProcessExtension>b__a(ExtensionProbeEntry e) in c:\Tortoise\src\Orchard\Environment\Extensions\ExtensionLoaderCoordinator.cs:138
   System.Linq.Enumerable.FirstOrDefault(IEnumerable`1 source, Func`2 predicate) +148
   Orchard.Environment.Extensions.ExtensionLoaderCoordinator.ProcessExtension(ExtensionLoadingContext context, ExtensionDescriptor extension) in c:\Tortoise\src\Orchard\Environment\Extensions\ExtensionLoaderCoordinator.cs:137
   Orchard.Environment.Extensions.ExtensionLoaderCoordinator.SetupExtensions() in c:\Tortoise\src\Orchard\Environment\Extensions\ExtensionLoaderCoordinator.cs:70
   Orchard.Environment.DefaultOrchardHost.SetupExtensions() in c:\Tortoise\src\Orchard\Environment\DefaultOrchardHost.cs:178
   Orchard.Environment.DefaultOrchardHost.BuildCurrent() in c:\Tortoise\src\Orchard\Environment\DefaultOrchardHost.cs:102
   Orchard.Environment.DefaultOrchardHost.Orchard.Environment.IOrchardHost.Initialize() in c:\Tortoise\src\Orchard\Environment\DefaultOrchardHost.cs:68
   Orchard.Web.MvcApplication.HostInitialization(HttpApplication application) in c:\Tortoise\src\Orchard.Web\Global.asax.cs:48
   Orchard.WarmupStarter.<>c__DisplayClass3.<LaunchStartupThread>b__2(Object state) in c:\Tortoise\src\Orchard.WarmupStarter\Starter.cs:89

[ApplicationException: Error during application initialization]
   Orchard.WarmupStarter.Starter`1.OnBeginRequest(HttpApplication application) in c:\Tortoise\src\Orchard.WarmupStarter\Starter.cs:63
   Orchard.Web.MvcApplication.Application_BeginRequest() in c:\Tortoise\src\Orchard.Web\Global.asax.cs:29

[TargetInvocationException: Exception has been thrown by the target of an invocation.]
   System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor) +0
   System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments) +192
   System.Reflection.RuntimeMethodInfo.Invoke(Object obj, BindingFlags invokeAttr, Binder binder, Object[] parameters, CultureInfo culture) +108
   System.Reflection.MethodBase.Invoke(Object obj, Object[] parameters) +19
   System.Web.Util.ArglessEventHandlerProxy.Callback(Object sender, EventArgs e) +56
   System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +136
   System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +69

Dec 12, 2012 at 10:11 AM

That looks scary. What I would try is do a clean clone and try running that one. Then, one at a time, copy your additional modules over, and finally your theme(s). Once all that works, copy over your App_Data folder (I would recommend to only copy over the Settings.txt file, putting it in the Sites/Default folder).

Dec 12, 2012 at 2:37 PM


Step by step I'm getting there, now a really strange problem is, I've created a custom module with custom controllers but now the system doesn't seem to now these controllers and routes... when I click on one of the pages it says page not found.

Do you know what that can be?

Dec 12, 2012 at 3:51 PM

When I check in the logs this is what I get

   at Orchard.Core.Settings.Drivers.SiteSettingsPartDriver.Editor(SiteSettingsPart part, IUpdateModel updater, Object shapeHelper) in c:\Tortoise\src\Orchard.Web\Core\Settings\Drivers\SiteSettingsPartDriver.cs:line 91
2012-12-12 16:06:33,421 [9] Orchard.Environment.Extensions.ExtensionLoaderCoordinator - No loader found for extension "CLB.SchoolModule"!
2012-12-12 16:06:34,631 [5] Orchard.Environment.Extensions.ExtensionManager - No suitable loader found for extension "CLB.SchoolModule"

Dec 12, 2012 at 4:07 PM

Nevermind, I deleted my bin folder and it works again!