.net - El ensamblaje de modo mixto se genera con la versión ''v2.0.50727'' del tiempo de ejecución
visual-studio-2010 .net-4.0 (6)
Obtengo la siguiente excepción:
El ensamblado de modo mixto se compila con la versión ''v2.0.50727'' del tiempo de ejecución y no se puede cargar en el tiempo de ejecución 4.0 sin información de configuración adicional.
como estaba tratando de exportar el informe de cristal de mi programa WPF ...
He agregado lo siguiente en la aplicación.config ya ...
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<runtime>
<NetFx40_LegacySecurityPolicy enabled="true"/>
</runtime>
Cualquier experto puede ayudar ???
Referencia que encontré: http://www.davidmoore.info/2010/12/17/running-net-2-runtime-applications-under-the-net-4-runtime
Agregue el atributo useLegacyV2RuntimeActivationPolicy = "true" en el archivo de aplicaciones app.config.
Valor antiguo
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/>
</startup>
Nuevo valor
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.1"/>
</startup>
Solucionará tu problema.
De hecho, tuve este problema idéntico con la solución inversa . Actualicé un proyecto de .NET a .NET 4.0 y luego volví a .NET 3.5. La aplicación.config en mi proyecto continuó teniendo lo siguiente que causaba el error anterior en cuestión:
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
La solución para resolver el error fue volver a la referencia 2.0 correcta de la siguiente manera:
<startup>
<supportedRuntime version="v2.0.50727"/>
</startup>
Por lo tanto, si una versión anterior está produciendo el error anterior, es posible que deba realizar una copia de seguridad de la versión compatible con .NET Framework.
Intente utilizar esta etiqueta de inicio exacta en su app.config debajo del nodo de configuración
<startup useLegacyV2RuntimeActivationPolicy="true">
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
<requiredRuntime version="v4.0.20506" />
</startup>
Intente utilizar otro archivo de configuración (no el de su proyecto) y RESTART Visual Studio:
C: / Archivos de programa (x86) / Microsoft Visual Studio 11.0 / Common7 / IDE / CommonExtensions / Microsoft / TestWindow / vstest.executionengine.x86.exe.config (32 bits)
o
C: / Archivos de programa (x86) / Microsoft Visual Studio 11.0 / Common7 / IDE / CommonExtensions / Microsoft / TestWindow / vstest.executionengine.exe.config (64 bits)
La excepción identifica claramente que se incluyó algún componente .NET 2.0.50727 en .NET 4.0. En el archivo App.config usa esto:
<startup useLegacyV2RuntimeActivationPolicy="true" />
Solucionó mi problema
Para mí, esto fue arrojado cuando se ejecutan pruebas unitarias bajo MSTest
(VS2015). Tuve que agregar
<startup useLegacyV2RuntimeActivationPolicy="true">
</startup>
en
C:/Program Files (x86)/Microsoft Visual Studio 14.0/Common7/IDE/CommonExtensions/Microsoft/TestWindow/TE.ProcessHost.Managed.exe.config