Reference3.Identity Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the unique identifier of the reference.
public:
property System::String ^ Identity { System::String ^ get(); };
public:
property Platform::String ^ Identity { Platform::String ^ get(); };
[System.Runtime.InteropServices.DispId(7)]
public string Identity { [System.Runtime.InteropServices.DispId(7)] get; }
[<System.Runtime.InteropServices.DispId(7)>]
[<get: System.Runtime.InteropServices.DispId(7)>]
member this.Identity : string
Public ReadOnly Property Identity As String
Property Value
The returned string depends on the reference type.Reference TypeValue ReturnedAssemblyAssembly name (assembly name without path or extension)COMThe format is:"GUID\major.minor\localeid\wrappertool"For example,"{00000205-0000-0010-8000-00AA006D2EA4}\2.5\409\tlbimp"is returned for ActiveX Data Objects 2.5.NativeAssembly identity of the assembly being referenced.
Implements
- Attributes
Examples
This example adds an Assembly and a COM reference to an open Visual Basic or Visual C# project and displays the Identity property for each. To run this example as an add-in, see How to: Compile and Run the Automation Object Model Code Examples.
The default paths for the reference added are: <installation root>\Program Files\Microsoft.NET\Primary Interop Assemblies for adodb.dll, and <installation root>\Program Files\Common Files\SpeechEngines\Microsoft for spcommon.dll. Replace <file path> in the example with these or other appropriate file paths.
Imports VSLangProj
Imports VSLangProj2
Imports VSLangProj80
Public Sub OnConnection(ByVal application As Object,_
ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
ByRef custom As Array) Implements IDTExtensibility2.OnConnection
applicationObject = CType(application, DTE2)
addInInstance = CType(addInInst, AddIn)
ShowIdentity (applicationObject)
End Sub
Sub ShowIdentity(ByVal dte As DTE2)
Dim aProject As Project
Dim aVSProject As VSProject2
aProject = applicationObject.Solution.Projects.Item(1)
aVSProject = _
CType(applicationObject.Solution.Projects.Item(1).Object, VSProject2)
' Add an Assembly reference and display its identity.
Dim newRef As Reference3
' Replace the <file path> with an actual file path.
newRef = aVSProject.References.Add("<file path>\adodb.dll")
MsgBox("Added an Assembly reference, named: " & newRef.Name)
MsgBox("The Identity of " & newRef.Name & " is " & newRef.Identity)
' Add a COM reference and display its identity.
' Replace the <file path> with an actual file path.
newRef = aVSProject.References.Add("<file path>\spcommon.dll")
MsgBox("Added a COM reference, named: " & newRef.Name)
MsgBox("The Identity of " & newRef.Name & " is " & newRef.Identity)
End Sub
using System.Windows.Forms;
using VSLangProj;
using VSLangProj2;
using VSLangProj80;
public void OnConnection(object application,
ext_ConnectMode connectMode, object addInInst, ref Array custom)
{
applicationObject = (DTE2)application;
addInInstance = (AddIn)addInInst;
ShowIdentity(((DTE2)applicationObject));
}
public void ShowIdentity(DTE2 dte)
{
// The first project is a Visual Basic or C# project.
VSProject2 vsProject =
((VSProject2)(applicationObject.Solution.Projects.Item(1).Object));
Reference3 aRef = null;
// Add an Assembly reference and display its identity.
// Replace <file path> with an actual file path.
aRef = (Reference3)vsProject.References.Add
(@"<file path>\adodb.dll");
MessageBox.Show("Added an Assembly reference, named: "
+ aRef.Name);
MessageBox.Show("The Identity of " + aRef.Name + " is "
+ aRef.Identity);
// Add a COM reference and display its identity.
// Replace <file path> with an actual file path.
aRef = (Reference3)vsProject.References.Add
(@"<file path>\spcommon.dll");
MessageBox.Show("Added a COM reference, named: "
+ aRef.Name);
MessageBox.Show("The Identity of " + aRef.Name + " is "
+ aRef.Identity);
}
Remarks
All components have a unique identifier. The Identity property gets that information. This property is unique for each reference, as an exception is raised if you attempt to add a reference with the same identity as a reference that is already in the collection. This property is suitable for indexing the Reference3 collection by using the Item method.