Slee Slee - 1 year ago 138
ASP.NET (C#) Question

is it possible to ignore assembly manifest mismatch?

I am trying to use a couple of libraries in my website that I pulled in using NuGet.

Problem is I am getting this error:

Could not load file or assembly 'AWSSDK, Version=, Culture=neutral, PublicKeyToken=cd2d24cd2bace800' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)

One of the libraries I am trying to use needs to use the AWSSDK but apparently it is looking for an older version I can no longer get.

Is it possible to ignore this error?

This is a brand new website with no code in it yet, just what has been pulled in by NuGet, the web.config is empty.


I added Fusion logging and now I get:

=== Pre-bind state information ===
LOG: DisplayName = AWSSDK, Version=, Culture=neutral, PublicKeyToken=cd2d24cd2bace800
LOG: Appbase = file:///C:/Users/Max/Documents/Visual Studio 2010/WebSites/images.RepZio/
LOG: Initial PrivatePath = C:\Users\Max\Documents\Visual Studio 2010\WebSites\images.RepZio\bin
Calling assembly : ImageResizer.Plugins.S3Reader, Version=, Culture=neutral, PublicKeyToken=null.
LOG: This bind starts in default load context.
LOG: Using application configuration file: C:\Users\Max\Documents\Visual Studio 2010\WebSites\images\web.config
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v2.0.50727\config\machine.config.
LOG: Post-policy reference: AWSSDK, Version=, Culture=neutral, PublicKeyToken=cd2d24cd2bace800
LOG: Attempting download of new URL file:///C:/Users/Max/AppData/Local/Temp/Temporary ASP.NET Files/root/8dcd52e9/53da58e/AWSSDK.DLL.
LOG: Attempting download of new URL file:///C:/Users/Max/AppData/Local/Temp/Temporary ASP.NET Files/root/8dcd52e9/53da58e/AWSSDK/AWSSDK.DLL.
LOG: Attempting download of new URL file:///C:/Users/Max/Documents/Visual Studio 2010/WebSites/images/bin/AWSSDK.DLL.
WRN: Comparing the assembly name resulted in the mismatch: Revision Number
ERR: Failed to complete setup of assembly (hr = 0x80131040). Probing terminated.

I get the same error if I add a bindingRedirect as mentioned in the comment below.

Answer Source

The latest ( AWSSDK release seems to have been signed with a different key than the previous releases. So unfortunately a bindingRedirect won't work.

Proceed as follows:

Open the package manager console (Tools > Library Package Manager > Package Manager Console) and type:

PM> Uninstall-Package -Force AWSSDK

followed by:

PM> Install-Package AWSSDK -Version

Then double check your web.config file. Make sure that it only contains the following binding redirect for AWSSDK:

    <assemblyIdentity name="AWSSDK" publicKeyToken="cd2d24cd2bace800" culture="neutral" />
    <bindingRedirect oldVersion="" newVersion="" />

Now, your project should be good to go.

Recommended from our users: Dynamic Network Monitoring from WhatsUp Gold from IPSwitch. Free Download