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