f# compiler-warnings

"Considere la posibilidad de reasignar la configuración de ensamblaje..." en F#



compiler-warnings (3)

Mismo error relacionado con Json.Net

En el archivo del proyecto que tenía

<Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL"> <SpecificVersion>False</SpecificVersion> <HintPath>../packages/Newtonsoft.Json.6.0.1/lib/net45/Newtonsoft.Json.dll</HintPath> </Reference>

y

<ItemGroup> <Reference Include="Newtonsoft.Json"> <HintPath>../packages/Newtonsoft.Json.5.0.6/lib/net45/Newtonsoft.Json.dll</HintPath> </Reference> </ItemGroup>

Eliminar el anterior solucionó el problema.

Después de instalar VS11, comencé a recibir el siguiente error:

Considere la posibilidad de volver a asignar la configuración del ensamblaje "FSharp.Core, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a" de la Versión "2.0.0.0" [C: / Archivos de programa (x86) / Reference Assemblies / Microsoft / FSharp / 2.0 / Runtime / v2. 0 / FSharp.Core.dll] a la versión "4.0.0.0" [C: / Archivos de programa (x86) / Referencias de referencia / Microsoft / FSharp / 2.0 / Runtime / v4.0 / FSharp.Core.dll] para resolver conflictos y deshacerse de la advertencia. C: / Windows / Microsoft.NET / Framework / v4.0.30319 / Microsoft.Common.targets (1490,5): advertencia MSB3247: Se encontraron conflictos entre diferentes versiones del mismo conjunto dependiente.

¿Qué debo hacer exactamente? No tengo idea de cómo hacer una reasignación de este tipo.


Si ha realizado una actualización bien, no debería haber ningún problema de este tipo ... A menos que esté usando una biblioteca de terceros, eso usa el antiguo FSharp.Core. En mi caso, es FSharpPowerPack quien hace esto.

Entonces, primero debes actualizar esa biblioteca para deshacerte de este mensaje.


A continuación se muestra un ejemplo de app.config que hace lo que se sugiere. Sin embargo, ¿qué hay en su proyecto y qué referencia de FSharp.Core hay? ¿Está apuntando a .Net 4.5 o 4.0 o qué? ¿Este proyecto hace referencia a alguna biblioteca antigua de F #? Esto generalmente se debe a que dos proyectos hacen referencia a versiones diferentes de FSharp.Core.dll, por ejemplo, verifique los nodos <Reference> en los archivos .fsproj.

<?xml version="1.0" encoding="utf-8"?> <configuration> <runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="FSharp.Core" publicKeyToken="b03f5f7f11d50a3a" culture="neutral"/> <!-- <bindingRedirect oldVersion="0.0.0.0-2.9.9.9" newVersion="4.3.0.0"/> --> <bindingRedirect oldVersion="2.0.0.0" newVersion="4.0.0.0"/> </dependentAssembly> </assemblyBinding> </runtime> </configuration>