Compartir a través de


Reference (Interfaz)

Representa una referencia en el proyecto. La inclusión de una referencia en un proyecto permite usar cualquiera de los miembros públicos que contiene. Los proyectos pueden incluir referencias a otros proyectos .NET, ensamblados .NET y objetos COM.

Espacio de nombres:  VSLangProj
Ensamblado:  VSLangProj (en VSLangProj.dll)

Sintaxis

'Declaración
<GuidAttribute("35D6FB50-35B6-4C81-B91C-3930B0D95386")> _
Public Interface Reference
[GuidAttribute("35D6FB50-35B6-4C81-B91C-3930B0D95386")]
public interface Reference
[GuidAttribute(L"35D6FB50-35B6-4C81-B91C-3930B0D95386")]
public interface class Reference
[<GuidAttribute("35D6FB50-35B6-4C81-B91C-3930B0D95386")>]
type Reference =  interface end
public interface Reference

El tipo Reference expone los siguientes miembros.

Propiedades

  Nombre Descripción
Propiedad pública BuildNumber Obtiene el número de compilación de la referencia.Sólo lectura.
Propiedad pública Collection Obtiene la colección que contiene el objeto compatible con esta propiedad o existente en esta construcción de código.
Propiedad pública ContainingProject Obtiene el proyecto del cual forma parte el elemento seleccionado.Sólo lectura.
Propiedad pública CopyLocal Determina si se copia la referencia en la ruta de acceso de la bandeja local.
Propiedad pública Culture Obtiene la cadena de referencia cultural de una referencia.Sólo lectura.
Propiedad pública Description Obtiene una descripción de texto de la referencia.Sólo lectura.
Propiedad pública DTE Obtiene el objeto de extensibilidad de nivel superior.
Propiedad pública Extender Obtiene el objeto Extender solicitado si está disponible para este objeto.
Propiedad pública ExtenderCATID Obtiene el identificador de categoría (CATID) del objeto Extender.
Propiedad pública ExtenderNames Obtiene una lista de los objetos Extender disponibles para el objeto.
Propiedad pública Identity Obtiene el identificador único de la referencia.Sólo lectura.
Propiedad pública MajorVersion Obtiene el número de versión principal de la referencia.Sólo lectura.
Propiedad pública MinorVersion Obtiene el número de versión secundaria de la referencia.Sólo lectura.
Propiedad pública Name Obtiene el nombre del objeto.Sólo lectura.
Propiedad pública Path Obtiene la ruta de acceso del archivo de referencia.Sólo lectura.
Propiedad pública PublicKeyToken Obtiene el token de la clave pública para el ensamblado al que se hace referencia.
Propiedad pública RevisionNumber Obtiene el número de revisión de la referencia.Sólo lectura.
Propiedad pública SourceProject Obtiene un objeto Project si la referencia es un proyecto.De lo contrario, devuelve Nothing (una referencia nullreferencia null (Nothing en Visual Basic)).Sólo lectura.
Propiedad pública StrongName Obtiene si la referencia está firmada con un par de claves privada y pública.Sólo lectura.
Propiedad pública Type Obtiene un valor prjReferenceType que indica si la referencia es un ensamblado o un componente COM.Sólo lectura.
Propiedad pública Version Obtiene la versión de la referencia seleccionada.

Arriba

Métodos

  Nombre Descripción
Método público Remove Obtiene la referencia del objeto References que lo contiene.

Arriba

Comentarios

Los objetos Reference están contenidos en la colección References del objeto VSProject. Hay dos tipos de objetos Reference: ensamblados (incluidos los proyectos de Visual Studio) y objetos COM. Cuando una referencia es otro proyecto, se denomina referencia entre proyectos y continúa considerándose como referencia de ensamblado.

Ejemplos

En el ejemplo siguiente se crea un nuevo proyecto a partir de una plantilla, se agregan dos referencias y se muestran sus tipos correspondientes.

'Macro Editor
Imports VSLangProj
Sub NewProject()
   Dim newName As String = InputBox("New project name:")
   ' Create a new project in the solution based on an existing
   ' project.
   Dim newProject As Project = DTE.Solution.AddFromTemplate( _
      "C:\TemplatePath\Template.vbproj", _
      "C:\ProjectPath\" & newName, newName)
        
   ' Add a COM reference and display its type.
   Dim vsProject As VSProject = CType(newProject.Object, VSProject)
   Dim newRef As Reference
   newRef = vsProject.References.Add("C:\WINNT\System32\msmask32.ocx")
   MsgBox(GetRefTypeName(newRef))
        
   ' Add an Assembly reference and display its type, "Assembly".
   newRef = vsProject.References.Add("C:\SomeProject\bin\SomeProject.dll")
   MsgBox(GetRefTypeName(newRef))
End Sub

Private Function GetRefTypeName(ByVal ref As Reference) _
   As String
   Dim type As String
   Select Case ref.Type
      Case prjReferenceType.prjReferenceTypeActiveX
         type = "COM"
      Case prjReferenceType.prjReferenceTypeAssembly
         type = "Assembly"
   End Select
   Return type
End Function

El ejemplo siguiente crea un breve informe con las propiedades de una referencia.

' Macro Editor
' Create a small report about a reference.
Imports VSLangProj
Function ReportReferences(ByVal aRef As Reference) As String
   Dim report As String = ""
   Dim type As String
   ' Each entry in the ArrayList will contain a label and a value.
   Dim ht As System.Collections.ArrayList = _
      New System.Collections.ArrayList()
   With aRef
      ht.Add(New String() {"Name", .Name})
      ht.Add(New String() {"Description", .Description})
      ht.Add(New String() {"Version", String.Format("{0}.{1}.{2}.{3}", _
         .MajorVersion, .MinorVersion, .BuildNumber, .RevisionNumber)})
      ht.Add(New String() {"Location", .ContainingProject.FullName})
      Select Case .Type
         Case prjReferenceType.prjReferenceTypeActiveX
            type = "COM"
         Case prjReferenceType.prjReferenceTypeAssembly
            type = "Assembly"
      End Select
      ht.Add(New String() {"Type", type})
      ht.Add(New String() {"Culture", .Culture})
   End With
        
   Dim datas() As String
   For Each datas In ht
      report &= datas(0) & ControlChars.Tab & datas(1) & ControlChars.CrLf
   Next
   Return report
End Function

Vea también

Referencia

VSLangProj (Espacio de nombres)