Umbraco upgrade from 7.2.8 to 7.4.3 throwing error for Azure

173 views Asked by At

I have upgraded umbraco version in 3 steps:

  1. Umbraco upgrade from 7.2.8 to 7.3.0
  2. Umbraco upgrade from 7.3.0 to 7.3.8
  3. Umbraco upgrade from 7.3.8 to 7.4.3

In my solution ImageResizer.Plugins.AzureReader2 was working before upgrade but after upgrade it has stopped working.

If I comment out below connection string in my web.config it will stopped throwing an error :

<resizer>
 <plugins>
   <add name="DiskCache" />
   <add name="MvcRoutingShim" />
   <add name="AzureReader2" connectionString="" endpoint="" prefix="~/azure/" />
 </plugins>
 <sizelimits imageWidth="0" imageHeight="0" totalWidth="8000" totalHeight="8000" totalBehavior="throwexception" />
 <diskCache dir="~/imagecache" autoClean="true" />
 <clientcache minutes="10080" />
</resizer>

Error Description :

Value cannot be null.
Parameter name: assemblyFile

[ArgumentNullException: Value cannot be null.
Parameter name: assemblyFile]
   System.Reflection.RuntimeAssembly.InternalLoadFrom(String assemblyFile, Evidence securityEvidence, Byte[] hashValue, AssemblyHashAlgorithm hashAlgorithm, Boolean forIntrospection, Boolean suppressSecurityChecks, StackCrawlMark& stackMark) +14309512
   System.Reflection.Assembly.LoadFrom(String assemblyFile) +54
   Microsoft.WindowsAzure.AzureApplicationSettings.GetServiceRuntimeAssembly() +201
   Microsoft.WindowsAzure.AzureApplicationSettings..ctor() +93
   Microsoft.WindowsAzure.CloudConfigurationManager.get_AppSettings() +152
   Microsoft.WindowsAzure.CloudConfigurationManager.GetSetting(String name) +26
   ImageResizer.Plugins.AzureReader2.AzureVirtualPathProvider..ctor(String blobStorageConnection) +50
   ImageResizer.Plugins.AzureReader2.AzureReader2Plugin.Install(Config c) +285
   ImageResizer.Configuration.PluginConfig.loadPluginsInternal() +265
   ImageResizer.Configuration.PluginConfig.LoadPlugins() +56
   ImageResizer.Configuration.Config.get_Current() +129
   ImageResizer.InterceptModule.System.Web.IHttpModule.Init(HttpApplication context) +415
   System.Web.HttpApplication.RegisterEventSubscriptionsWithIIS(IntPtr appContext, HttpContext context, MethodInfo[] handlers) +618
   System.Web.HttpApplication.InitSpecial(HttpApplicationState state, MethodInfo[] handlers, IntPtr appContext, HttpContext context) +172
   System.Web.HttpApplicationFactory.GetSpecialApplicationInstance(IntPtr appContext, HttpContext context) +402
   System.Web.Hosting.PipelineRuntime.InitializeApplication(IntPtr appContext) +343

[HttpException (0x80004005): Value cannot be null.
Parameter name: assemblyFile]
   System.Web.HttpRuntime.FirstRequestInit(HttpContext context) +579
   System.Web.HttpRuntime.EnsureFirstRequestInit(HttpContext context) +112
   System.Web.HttpRuntime.ProcessRequestNotificationPrivate(IIS7WorkerRequest wr, HttpContext context) +712

Diagnostic page output https://gist.github.com/anonymous/12889621aabca8401170ce7d2d82b38f

1

There are 1 answers

1
Lilith River On BEST ANSWER

It is very likely this has something to do with Microsoft.WindowsAzure.ServiceRuntime Assembly: 2.7.0.0 File: 2.7.1198.742 Info: 2.7.1198.742 (rd_art_stable.151102-1219)

Your various Microsoft.WindowsAzure.* dlls are not compatible with each other. Try to get them from the same SDK.

ImageResizer is forwards compatible with most builds of the Azure SDK, so you will need to determine which build makes Umbraco and ImageProcessor happy (or remove ImageProcessor's Azure adapter).