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:

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)

Otros recursos

Hacer referencia a espacios de nombres y componentes

Administrar referencias

Programar con ensamblados