Type.Assembly Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Gets the Assembly in which the type is declared. For generic types, gets the Assembly in which the generic type is defined.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

Public MustOverride ReadOnly Property Assembly As Assembly

Property Value

Type: System.Reflection.Assembly

An Assembly instance that describes the assembly containing the current type. For generic types, the instance describes the assembly that contains the generic type definition, not the assembly that creates and uses a particular constructed type.



If the current Type object represents a constructed generic type, this property returns the assembly that contains the generic type definition. For example, suppose you create an assembly named MyGenerics.dll that contains the generic type definition MyGenericStack<T> (MyGenericStack(Of T) in Visual Basic, generic<T> ref class MyGenericStack in C++). If you create an instance of MyGenericStack<int> (MyGenericStack(Of Integer) in Visual Basic) in another assembly, the Assembly property for the constructed type returns an Assembly object that represents MyGenerics.dll.

Similarly, if the current Type object represents an unassigned generic parameter T, this property returns the assembly that contains the generic type that defines T.

If the Type.Assembly property is not available on a particular .NET platform, such as .NET Core or the Universal Windows Platform, use the System.Reflection.TypeInfo.Assembly property instead.

This property is read-only.

The following example displays the assembly name associated with the class and the fully qualified name of the type.

Imports System.Reflection

Class Example
    Public Shared Sub Main()
        Dim objType As Type = GetType(System.Array)
        ' Display the full assembly name.
        Console.WriteLine("Full assembly name:{1}   {0}.", 
                          objType.Assembly.FullName.ToString(), vbCrLf)
        ' Display the qualified assembly name.
        Console.WriteLine("Qualified assembly name: {1}   {0}.", 
                          objType.AssemblyQualifiedName.ToString(), vbCrLf)
    End Sub
End Class 
' The example displays the following output if run under the .NET Framework 4.5:
'    Full assembly name:
'       mscorlib, Version=, Culture=neutral, PublicKeyToken=b77a5c561934e089.
'    Qualified assembly name:
'       System.Array, mscorlib, Version=, Culture=neutral, PublicKeyToken=b77a5c561934e089.

.NET Framework
Available since 1.1
Portable Class Library
Supported in: portable .NET platforms
Available since 2.0
Windows Phone Silverlight
Available since 7.0
Return to top