Referencias del proyecto
Actualización: noviembre 2007
Para poder escribir un código que trabaje con un componente externo, el proyecto debe contener en primer lugar una referencia al mismo. Puede hacer referencia a los siguientes tipos de componentes:
Bibliotecas de clases o ensamblados de .NET Framework
Componentes COM
Otros ensamblados o bibliotecas de clases de proyectos de la misma solución
Servicios Web XML
Para obtener más información acerca de las referencias de servicios Web XML, vea Referencias web en Visual Studio.
Nota para Visual Basic: |
---|
Las referencias de proyectos se administran de manera diferente en Visual Studio que en Visual Basic 6.0. Para obtener más información, vea Administración de proyectos para usuarios de Visual Basic 6.0. |
Agregar referencias en tiempo de diseño
Use Agregar referencia (Cuadro de diálogo) para agregar referencias a los componentes en tiempo de diseño.
El cuadro de diálogo Agregar referencia muestra los ensamblados en las ubicaciones siguientes:
La carpeta de ensamblados públicos (Archivos de programa\Microsoft Visual Studio 9.0\Common7\IDE\Public Assemblies).
Si copia otros ensamblados en esta carpeta, aparecerán en la lista del cuadro de diálogo Agregar referencia.
Carpetas que ha especificado estableciendo rutas de acceso de referencias.
El procedimiento para establecer la ruta de acceso de referencia para los proyectos de Visual C# es ligeramente diferente. En un proyecto de Visual Basic, haga clic en el botón Rutas de acceso de referencia para mostrar el cuadro de diálogo Agregar referencia. En un proyecto de Visual C#, use Rutas de acceso de referencia (Página, Diseñador de proyectos) (C#) del Diseñador de proyectos. Para obtener más información, consulte Cómo: Establecer la ruta de acceso de referencia (C#).
También puede utilizar el cuadro de diálogo Agregar referencia para ir a ensamblados que no se muestren. No puede agregar referencias de Caché de ensamblados global (GAC), ya que forma parte estrictamente del entorno de tiempo de ejecución.
Cuando haga referencia a un ensamblado de un proyecto, Visual Studio buscará el ensamblado en las ubicaciones siguientes:
Directorio del proyecto actual. (Puede buscar estos ensamblados utilizando la ficha Examinar.)
Otros directorios del proyecto de la misma solución. (Puede buscar estos ensamblados en la ficha Proyectos.)
La carpeta de ensamblados públicos (Archivos de programa\Microsoft Visual Studio 9.0\Common7\IDE\Public Assemblies). (Puede buscar estos ensamblados en la ficha .NET.)
Carpetas que ha especificado estableciendo rutas de acceso de referencias. (Puede establecer las rutas de acceso de la referencia utilizando Rutas de acceso de referencia (Cuadro de diálogo) (Visual Basic) o Rutas de acceso de referencia (Página, Diseñador de proyectos) (C#).)
Para obtener más información acerca de cómo agregar referencias en tiempo de diseño, consulte Cómo: Agregar o quitar referencias en Visual Studio (Visual Basic).
Referencias a componentes compartidos en tiempo de ejecución
En tiempo de ejecución, los componentes deben estar en la ruta de acceso de resultados del proyecto o en Caché de ensamblados global (GAC). Si el proyecto contiene una referencia a un objeto que no se encuentra en ninguna de estas ubicaciones, deberá copiar la referencia a la ruta de acceso de resultados del proyecto cuando genere el proyecto La propiedad CopyLocal indica si es necesario realizar esta copia. Si el valor es True, la referencia se copiará en el directorio de proyecto al generar el proyecto. Si el valor es False, no se copia.
Si se implementa una aplicación que contenga una referencia a un componente personalizado registrado en la GAC, el componente no se implementará con la aplicación, independientemente de la configuración de CopyLocal. En versiones anteriores de Visual Studio, podía establecer la propiedad CopyLocal en una referencia para garantizar que el ensamblado se había implementado. Ahora, debe agregar manualmente el ensamblado a la carpeta \Bin. De esta forma se controla todo el código personalizado, reduciendo el riesgo de publicar código personalizado con el que no está familiarizado.
De forma predeterminada, la propiedad CopyLocal se establece en False si el ensamblado o el componente está en la caché de ensamblados global o es un componente de marco de trabajo. De lo contrario, el valor se establece en True. Las referencias entre proyectos siempre se establecen en True.
Referencias entre proyectos y referencias a archivos
Las referencias a archivos son referencias directas a ensamblados; se crean en la ficha Examinar del cuadro de diálogo Agregar referencia. Las referencias entre proyectos son referencias a proyectos que contienen ensamblados; se crean en la ficha Proyecto del cuadro de diálogo Agregar referencia.
La ventaja de una referencia entre proyectos es que crea una dependencia entre los proyectos del sistema de compilación. Por consiguiente, el proyecto dependiente se generará si ha cambiado desde la última vez que se generó el proyecto que hace referencia a él. Una referencia de archivo no crea una dependencia de compilación, por lo que es posible de generar el proyecto que hace referencia sin generar el proyecto dependiente, de manera que la referencia se puede quedar obsoleta. (Es decir, el proyecto podría hacer referencia a una versión del proyecto generada anteriormente.) Esto puede hacer que en el directorio bin se requieran varias versiones de un mismo archivo DLL, lo cual no es posible. Si se produce este conflicto, verá un mensaje como Advertencia: la dependencia 'archivo' del proyecto 'proyecto' no se puede copiar en el directorio de ejecución porque reemplazaría la referencia 'archivo'.
No se deben agregar referencias de archivos a resultados de otro proyecto de la misma solución, ya que puede provocar errores de compilación. En su lugar, use la ficha Proyectos del cuadro de diálogo Agregar referencia para crear referencias de proyecto a proyecto en la misma solución. Esto facilita el trabajo en equipo, permitiendo una mejor administración de las bibliotecas de clases creadas en los proyectos. Para obtener más información, vea Solucionar problemas de referencias rotas y Cómo: Crear y quitar dependencias del proyecto.
Referencias Web
También puede agregar referencias web en el cuadro de diálogo Agregar referencia Web. Para obtener más información, vea Cómo: Agregar y quitar referencias Web.
Vea también
Tareas
Solucionar problemas de referencias rotas
Cómo: Agregar o quitar referencias en Visual Studio (Visual Basic)
Referencia
Agregar referencia (Cuadro de diálogo)