Error backend after upgrade to CM 9.9

Vote:
 

HI!

I upgraded front end site from cms.core 9.6.1 to 9.7 and Commerce 9.8.1 to 9.9.

But the back end dll Mediachase.BusinessFoundation.Data and other dlls seems to be asking for Episerver.Framework version 9.6.1, is it not compatible?

[InitializationException: While loading .NET types from "Mediachase.ConsoleManager" the following error(s) was reported (limited to first 10 errors):

     - System.IO.FileLoadException: Could not load file or assembly 'EPiServer.Framework, Version=9.6.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
File name: 'EPiServer.Framework, Version=9.6.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7'

=== Pre-bind state information ===
LOG: DisplayName = EPiServer.Framework, Version=9.6.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7
 (Fully-specified)
LOG: Appbase = file:///C:/commerce/Holmen.CommerceManager.Web/
LOG: Initial PrivatePath = C:\commerce\Holmen.CommerceManager.Web\bin
Calling assembly : Mediachase.BusinessFoundation.Data, Version=9.9.0.1430, Culture=neutral, PublicKeyToken=41d2e7a615ba286c.
===
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\commerce\Holmen.CommerceManager.Web\web.config
LOG: Using host configuration file: C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework64\v4.0.30319\config\machine.config.
LOG: Post-policy reference: EPiServer.Framework, Version=9.6.1.0, Culture=neutral, PublicKeyToken=8fe83dea738b45b7
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/2fa4bb56/b3eb3d34/EPiServer.Framework.DLL.
LOG: Attempting download of new URL file:///C:/Windows/Microsoft.NET/Framework64/v4.0.30319/Temporary ASP.NET Files/root/2fa4bb56/b3eb3d34/EPiServer.Framework/EPiServer.Framework.DLL.
LOG: Attempting download of new URL file:///C:/commerce/Holmen.CommerceManager.Web/bin/EPiServer.Framework.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Minor Version
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.

===

Still problems with CM being compatible with all CMS dll versions?

I do have assembly bindings set to:


        
        
      
#145021
Feb 23, 2016 21:27
Vote:
 

Hi,

Can you make sure StructureMap, StructureMap.Web And Newtonsoft.Json are all in bin and in correct versions (or set to correct versions in web.config)?

Regards,

/Q

#145054
Feb 24, 2016 8:47
Vote:
 

nope, looks good.

<dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="StructureMap" publicKeyToken="e60ad81abae3c223" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.6.186" newVersion="3.1.6.186" />
      </dependentAssembly>
      <dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="StructureMap.Web" publicKeyToken="e60ad81abae3c223" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-1.0.0.0" newVersion="1.0.0.0" />
      </dependentAssembly>
      <dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="StructureMap.Net4" publicKeyToken="e60ad81abae3c223" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-3.1.6.186" newVersion="3.1.6.186" />
      </dependentAssembly>
      <dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.8.18111" newVersion="6.0.8.18111" />
      </dependentAssembly>

I can see that the mediashase dlls are compiled with 9.6.1.

Strange that the assembly redirects is not working on backend. Front end is working.

Any idea?

#145070
Feb 24, 2016 10:18
Vote:
 

I just tried myself and it works as expect. However I updated CMS.Core - which will update Framework itself.

I think this can be removed:

      <dependentAssembly xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-6.0.8.18111" newVersion="6.0.8.18111" />
      </dependentAssembly>

Newtonsoft.Json has weird assembly version which might have caused the problem.

Regards,

/Q

#145097
Edited, Feb 24, 2016 16:29
Vote:
 
<p>For information: I didnt find which of the dependentAssembly, but one of the dependentAssembly did cause this problem. What i did was that i copied the assemby bindings from the front end site to the back end web.config. That worked for me. So it is some kind important to <strong>not</strong> have any old dependentAssembly that is not needed.</p>
#152094
Aug 16, 2016 12:49
* You are NOT allowed to include any hyperlinks in the post because your account hasn't associated to your company. User profile should be updated.