nemerle icon indicating copy to clipboard operation
nemerle copied to clipboard

Cannot compile assembly with policy redirection

Open NN--- opened this issue 10 years ago • 0 comments

Add Microsoft.AspNet.SignalR nuget and try compiling. C# compiles fine , while Nemerle not.

error: Can't load types from 'Microsoft.AspNet.SignalR.Core, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'. Error: Could not load file or assembly 'Microsoft.Owin, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified..

The problem that SRE requires exact versions. It can be managed by putting ncc.exe.config with

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.2.0" newVersion="2.0.2.0" />
      </dependentAssembly>
    </assemblyBinding>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="Microsoft.Owin.Security" publicKeyToken="31bf3856ad364e35" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.0.2.0" newVersion="2.0.2.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

But of course not feasible to do it for all assemblies in the world. Either we find how to solve it , or it can be solved by dynamic app.exe.config. Smth like that:

ncc.exe --execonfig:my.exe.config a.n -r ...

NN--- avatar Jan 20 '14 12:01 NN---