¿Crear código 4.5 sin el tiempo de ejecución 4.5 instalado en la máquina?

Tenemos un sistema grande y complejo que se ejecuta bajo .Net 4.0. Queremos comenzar a introducir código escrito para .Net 4.5, pero no podemos (todavía) asumir que .Net 4.5 está instalado en todas las máquinas de desarrollo, máquinas de construcción y laboratorios de prueba. Así que estoy buscando una manera de compilar ciertos proyectos en MSBuild usando ensamblajes que están disponibles en el disco, en máquinas que solo tienen instalado .Net 4.0.

Según la documentación, parece posible. Los ensamblados de referencia 4.5 están disponibles en el entorno de msbuild y he estado experimentando con el TargetFrameworkVersion, FrameworkPathOverride y TargetFrameworkMoniker atributos, pero hasta ahora sin éxito.

Cualquier sugerencia, sugerencia o muestra de trabajo sería de gran ayuda.

preguntado el 30 de junio de 12 a las 14:06

¿Por qué molestarse? Los ensamblados de referencia de .NET 4.0 funcionarán bien. Si una máquina tiene .NET 4.5 instalado, la aplicación se ejecutará con esa versión, no es una versión en paralelo como lo fue .NET 4. El uso de ensamblajes de referencia de .NET 4.5 en una máquina y no en otra solo produce compilaciones rotas. -

No entendí tu comentario. Estoy buscando la configuración de MSBuild que permitirá compilar el código escrito para 4.5 en una máquina que no tiene 4.5 instalado. -

No lo entiendo, ¿esperas que 4.5 se teletransporte a la máquina para que la compilación tenga éxito? No son solo los ensamblajes de referencia, el compilador tiene cambios bastante importantes para admitir async/await. Sin mencionar los archivos msbuild .targets. -

se trata menos de teletransportarse y más de si es posible lograr una compilación que funcione simplemente copiando archivos binarios (tantos como sea necesario, incluidos CSC, MSBUILD, etc.) en la máquina de compilación en lugar de instalar el SDK. (Por cierto, gracias por su paciencia hasta ahora, lo tendré eventualmente...) -

MSBuild de .NET 4 no debería poder manejar la situación incluso si presenta ensamblados de referencia de .NET 4.5. Deberá instalar .NET 4.5 y también actualizará MSBuild. -

1 Respuestas

Para compilar una aplicación de .NET Framework 4.5, también debe tener los ensamblados de referencia de .NET Framework 4.5.

INSTALACIÓN

.NET Framework 4.5 reemplaza el Common Language Runtime (CLR), los objetivos, las tareas y las herramientas de .NET Framework 4 sin cambiarles el nombre. Esencialmente, crea un .NET Framework 4 modificado y mejorado.

Respondido el 30 de junio de 12 a las 21:06

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.