Fusion Post-policy interaction ignores bindingRedirect

I have a project with SignalR and Ext.net. Both require Newtonsoft.Json.

SignalR requires Newtonsoft.Json 4.5.0.0 and Ext.net to require 4.0.8.0.

My redirect links do not work at all. In my web.config

<dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/> <bindingRedirect oldVersion="4.0.8.0" newVersion="4.5.0.0"/> </dependentAssembly> 

But when he goes to bind

  === Pre-bind state information ===
 LOG: DisplayName = Newtonsoft.Json, Version = 4.0.8.0, Culture = neutral, PublicKeyToken = 30ad4fe6b2a6aeed
  (Fully-specified)
 LOG: Appbase = file: /// C: / Users / ***** / Documents / Visual Studio 2012 / Projects / QuotaBuilder / branches / 1Install / QMSSite /
 LOG: Initial PrivatePath = C: \ Users \ ***** \ Documents \ Visual Studio 2012 \ Projects \ QuotaBuilder \ branches \ 1Install \ QMSSite \ bin
 Calling assembly: Ext.Net, Version = 1.6.0.1867, Culture = neutral, PublicKeyToken = 2e12ce3d0176cd87.
 ===
 LOG: This bind starts in default load context.
 LOG: Using application configuration file: C: \ Users \ ***** \ Documents \ Visual Studio 2012 \ Projects \ QuotaBuilder \ branches \ 1Install \ QMSSite \ web.config
 LOG: Using host configuration file: \\ pacrl-fsrv02 \ userdata $ \ ***** \ My Documents \ IISExpress \ config \ aspnet.config
 LOG: Using machine configuration file from C: \ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ config \ machine.config.
 LOG: Post-policy reference: Newtonsoft.Json, Version = 4.0.8.0, Culture = neutral, PublicKeyToken = 30ad4fe6b2a6aeed
 LOG: Attempting download of new URL file: /// C: /Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files / root / 862fb004 / 45708817 / Newtonsoft.Json.DLL.
 LOG: Attempting download of new URL file: /// C: /Windows/Microsoft.NET/Framework/v4.0.30319/Temporary ASP.NET Files / root / 862fb004 / 45708817 / Newtonsoft.Json / Newtonsoft.Json.DLL.
 LOG: Attempting download of new URL file: /// C: / Users / ***** / Documents / Visual Studio 2012 / Projects / QuotaBuilder / branches / 1Install / QMSSite / bin / Newtonsoft.Json.DLL.
 WRN: Comparing the assembly name resulted in the mismatch: Minor Version
 ERR: Failed to complete setup of assembly (hr = 0x80131040).  Probing terminated.

So, as far as I can see, the Post-Policy link should be a redirected version, not the original request. But this is completely ignored. I already ran into this problem with this project, but in the past I was able to just get the version that it requested, because there were no two separate dependencies.

+6
source share
2 answers

Change the binding redirection to:

 <dependentAssembly> <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/> <bindingRedirect oldVersion="0.0.0.0-4.5.0.0" newVersion="4.5.0.0"/> </dependentAssembly> 
0
source

Remember to include the XML namespace in the assemblyBinding element.

 <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
0
source

All Articles