Could not load file or assembly 'Microsoft.Practices.Unity'

前端 未结 7 1608
半阙折子戏
半阙折子戏 2021-02-12 23:58

I am trying to upgrade Unity to version (2.1.505.2), but when I run the application I get the following FileLoadException

Could

相关标签:
7条回答
  • 2021-02-13 00:52

    The binding redirect should be pointed to a proper assembly version.

    For your case version 2.1.505.0 should be used!

    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <assemblyIdentity name="Microsoft.Practices.Unity" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.1.505.0" newVersion="2.1.505.0" />
      </dependentAssembly>
    </assemblyBinding>
    

    2.1.505.2 cannot be specified because of next reason:

    enter image description here

    Unity assembly 2.1.505.2 has different versions specified in the AssemblyFileVersion and AssemblyVersion.

    CLR is working with the AssemblyVersion and AssemblyFileVersion is ignored but NuGet is working with the AssemblyFileVersion!

    So that's why you have this difference!

    Please use AssemblyVersion

    0 讨论(0)
提交回复
热议问题