Solucionar problemas de versión de .NET Framework de destino
Visual Studio permite distribuir un runtime de .NET Framework ligero, conocido como .NET Framework 4 Client Profile, que contiene solo un subconjunto de los binarios incluidos en .NET Framework 4. Si utiliza .NET Framework 4 Client Profile, podrá distribuir una biblioteca de menor tamaño de .NET Framework a los usuarios de la aplicación de modo que puedan ejecutar la aplicación aunque no tengan instalada la versión completa de .NET Framework 4 en sus sistemas.
Si la aplicación tiene como destino un perfil determinado, pueden producirse errores si intenta hacer referencia a un ensamblado que no forma parte de ese perfil. Entre los errores comunes se incluyen los siguientes:
El tipo o el nombre del espacio de nombres "nombre" no existe en el espacio de nombres "espacio de nombres" (¿falta una referencia de ensamblado?)
El tipo "nombreDeTipo" no está definido.
No pudo resolver el ensamblado "ensamblado". El ensamblado no forma parte del perfil "perfil".
Estos errores pueden ser el resultado de diferentes acciones. En este tema se incluyen descripciones de las causas que pueden haber producido el error y cómo resolver el problema.
Para obtener más información sobre .NET Framework 4 Client Profile, vea .NET Framework Client Profile y Cómo: Elegir perfil o versión de destino de .NET Framework.
Referencia a un ensamblado no incluido en Client Profile
Si la aplicación intenta hacer referencia a la funcionalidad de un ensamblado o un ensamblado dependiente que no está incluido en .NET Framework 4 Client Profile, se pueden producir mensajes de error en tiempo de ejecución. El mensaje exacto depende de la ubicación de la funcionalidad a la que se hace referencia. Para eliminar estos errores, puede quitar del proyecto la referencia incorrecta al ensamblado o bien establecer como destino del proyecto la versión completa de .NET Framework versión 4 en lugar de la biblioteca del subconjunto de .NET Framework 4 Client Profile.
Referencia a un proyecto o ensamblado destinado a otra versión de .NET Framework
Puede crear aplicaciones que hagan referencia a proyectos o ensamblados destinados a otras versiones de .NET Framework. Por ejemplo, si crea una aplicación destinada a .NET Framework 4 Client Profile, ese proyecto podrá hacer referencia a un ensamblado destinado a la versión 2.0 de .NET Framework. Sin embargo, si crea un proyecto destinado a una versión anterior de .NET Framework, no podrá establecer una referencia en ese proyecto a un proyecto o ensamblado destinado a .NET Framework 4 Client Profile o .NET Framework 4. Para eliminar el error, asegúrese de que el perfil definido como destino de la aplicación es compatible con el perfil definido como destino de los proyectos o ensamblados a los que hace referencia la aplicación.
Cambio del destino de un proyecto a una versión diferente de .NET Framework
Si cambia la versión de destino de .NET Framework de la aplicación, Visual Studio cambiará algunas de las referencias. Sin embargo, también deberá realizar algunas actualizaciones manuales. Por ejemplo, si crea una aplicación con recursos o valores que se basan en .NET Framework 4 Client Profile y, a continuación, cambia el destino de la aplicación a .NET Framework 3.5 SP1, puede aparecer uno de los error mencionados anteriormente.
Para resolver la configuración de la aplicación, en el Explorador de soluciones, haga clic en Mostrar todos los archivos y, a continuación, modifique el archivo app.config en el Editor XML de Visual Studio. Cambie la versión en la configuración de modo que coincida con la de .NET Framework. Por ejemplo, puede cambiar la versión de 4.0.0.0 a 2.0.0.0. De manera similar para una aplicación con recursos agregados, en el Explorador de soluciones, haga clic en Mostrar todos los archivos, expanda Mi proyecto (Visual Basic) o Propiedades (C#) y, a continuación, modifique el archivo Resources.resx en el Editor XML de Visual Studio. Cambie la versión de 4.0.0.0 a 2.0.0.0.
Si la aplicación tiene recursos como iconos o mapas de bits o si tiene valores como cadenas de conexión de datos, también podrá solucionar el problema quitando todos los elementos de la página Configuración del Diseñador de proyectos y, a continuación, agregando de nuevo los valores necesarios. Para obtener más información, vea Página Configuración, Diseñador de proyectos.
Se ha redestinado un proyecto a una versión diferente de .NET Framework y las referencias no se resuelven
En algunos casos cuando se redestina un proyecto a una versión diferente de .NET Framework, sus referencias no se pueden resolver correctamente. Una causa común de esto son las referencias completas explícitas a los ensamblados. Puede corregirlo quitando las referencias que no se resuelven y, a continuación, volviendo a agregarlas al proyecto. También puede editar el archivo del proyecto para quitar las referencias del formulario:
<Reference Include="System.ServiceModel, Version=3.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL" />
y reemplazarlas con el formulario simple:
<Reference Include="System.ServiceModel" />
Nota
Después de cerrar y volver a abrir el proyecto, también debe recompilarlo para asegurarse de que las referencias se resuelven correctamente.
Vea también
Tareas
Cómo: Elegir perfil o versión de destino de .NET Framework
Conceptos
Otros recursos
Elegir versión de destino o perfil de .NET Framework específico