2010-04-16 14 views
21

¿Qué hace exactamente el tiempo de ejecución de .NET 4.0 si un ejecutable de .NET 4.0 contiene una referencia a un ensamblado de .NET 2.0?¿Qué sucede cuando .NET 4.0 hace referencia a un ensamblado de .NET 2.0?

El ensamblado .NET 2.0 se ejecuta con el tiempo de ejecución de .NET 4.0 (en otras palabras, .NET 4.0 debe ser 100% compatible con .NET 2.0) o el proceso de alguna manera aloja el tiempo de ejecución de .NET 2.0 y algunos ocurre que la magia hace que los tipos .NET 2.0 sean accesibles de forma transparente para mi código basado en .NET 4.0.

Respuesta

17

Dicen que debería funcionar bien. Consulte this.

+0

Gracias. Parece que el código realmente será ejecutado por .NET 4.0 CLR si es cargado por una aplicación .NET 4.0. Todavía estoy buscando alguna declaración oficial sólida sobre esto en MSDN, pero aún no lo he desenterrado. – Cygon

+1

Etiqueto esto como la respuesta porque me lleva a la información más útil sobre el tema. Cuando una aplicación .NET 4.0 carga un ensamblado .NET 2.0, de hecho se ejecuta dentro de .NET 4.0 CLR. Incluso hay diferencias sutiles (el modelo de seguridad más importante) de lo que pueden hacer los ensamblados .NET 2.0 no funcionan sin ajustes adicionales en el archivo app.config (log4net es uno de esos conjuntos de problemas). – Cygon

Cuestiones relacionadas