Assembly.GetExportedTypes Metod

Definition

Hämtar de offentliga typer som definierats i den här sammansättningen som visas utanför sammansättningen.

public:
 virtual cli::array <Type ^> ^ GetExportedTypes();
[System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types might be removed")]
public virtual Type[] GetExportedTypes();
public virtual Type[] GetExportedTypes();
[<System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("Types might be removed")>]
abstract member GetExportedTypes : unit -> Type[]
override this.GetExportedTypes : unit -> Type[]
abstract member GetExportedTypes : unit -> Type[]
override this.GetExportedTypes : unit -> Type[]
Public Overridable Function GetExportedTypes () As Type()

Returer

Type[]

En matris som representerar de typer som definierats i den här sammansättningen och som är synliga utanför sammansättningen.

Implementeringar

Attribut

Undantag

Sammansättningen är en dynamisk sammansättning.

Det går inte att läsa in en beroende sammansättning.

Exempel

Följande kodexempel definierar ett antal klasser med olika åtkomstnivåer och anropar GetExportedTypes för att visa de som visas utanför sammansättningen.

using System;
using System.Reflection;

public class Example
{
    public static void Main()
    {
        foreach (Type t in typeof(Example).Assembly.GetExportedTypes())
        {
            Console.WriteLine(t);
        }
    }
}

public class PublicClass
{
    public class PublicNestedClass {}

    protected class ProtectedNestedClass {}

    internal class FriendNestedClass {}

    private class PrivateNestedClass {}
}

internal class FriendClass
{
    public class PublicNestedClass {}

    protected class ProtectedNestedClass {}

    internal class FriendNestedClass {}

    private class PrivateNestedClass {}
}
Imports System.Reflection

Public Class Example
    Public Shared Sub Main()
        For Each t As Type In GetType(Example).Assembly.GetExportedTypes()
            Console.WriteLine(t)
        Next
    End Sub
End Class

Public Class PublicClass
    Public Class PublicNestedClass
    End Class

    Protected Class ProtectedNestedClass
    End Class

    Friend Class FriendNestedClass
    End Class

    Private Class PrivateNestedClass
    End Class
End Class

Friend Class FriendClass
    Public Class PublicNestedClass
    End Class

    Protected Class ProtectedNestedClass
    End Class

    Friend Class FriendNestedClass
    End Class

    Private Class PrivateNestedClass
    End Class
End Class

Kommentarer

De enda typer som visas utanför en sammansättning är offentliga typer och offentliga typer kapslade i andra offentliga typer. Om du vill hämta alla typer i en sammansättning, inklusive de som inte är offentliga, använder du GetTypes metoden.

Gäller för