2012-07-30 11 views
6

mam kilka testów xUnit które są upadające ze wspólnymsystemu szeroki bindingRedirect dla F # 4.0.0.0 do 4.3.0.0

Could not load file or assembly 'FSharp.Core, Version=4.0.0.0, Culture=neutral, 
PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. 
The system cannot find the file specified. 

Aby wykonać przekierowanie całej maszyny, dodałem do pliku

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config 

<runtime> 
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> 
    <dependentAssembly> 
     <assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" 
         culture="neutral"/> 
     <bindingRedirect oldVersion="4.0.0.0" newVersion="4.3.0.0"/> 
    </dependentAssembly> 
    </assemblyBinding> 
</runtime> 

Czy masz lepszy sposób na rozwiązanie problemu 4.0/4.3?

Odpowiedz

3

Nie wiem xUnit, ale jeśli twój program testowy obsługuje pliki app.config, możesz po prostu dołączyć konfigurację do zespołów testów jednostkowych (np. App.config wzdłuż linii, którą otrzymujesz z wartością domyślną F # szablon aplikacji konsoli). Jeśli tester nie honoruje app.config, to myślę, że strategia machine.config jest przyzwoita.

2

Używając NuGet, dodałem FSharp.Core.3 i naprawiłem mój problem.