Type.IsVisible Vlastnost

Definice

Získá hodnotu označující, zda Type lze přistupovat kódem mimo sestavení.

public:
 property bool IsVisible { bool get(); };
public bool IsVisible { get; }
member this.IsVisible : bool
Public ReadOnly Property IsVisible As Boolean

Hodnota vlastnosti

truepokud je aktuální Type veřejný typ nebo veřejný vnořený typ tak, aby všechny uzavřené typy byly veřejné, jinak . false

Příklady

Následující příklad kódu testuje dvě třídy, z nichž pouze jeden je viditelný mimo sestavení.

using System;

internal class InternalOnly 
{
    public class Nested {}
}

public class Example
{
    public class Nested {}

    public static void Main()
    {
        Type t = typeof(InternalOnly.Nested);
        Console.WriteLine(
            "Is the {0} class visible outside the assembly? {1}", 
            t.FullName, 
            t.IsVisible
        );

        t = typeof(Example.Nested);
        Console.WriteLine(
            "Is the {0} class visible outside the assembly? {1}", 
            t.FullName, 
            t.IsVisible
        );
    }
}

/* This example produces the following output:

Is the InternalOnly+Nested class visible outside the assembly? False
Is the Example+Nested class visible outside the assembly? True
 */
module internal InternalOnly = 
    type Nested() = class end

module Example =
    type Nested() = class end

let t = typeof<InternalOnly.Nested>
printfn $"Is the {t.FullName} class visible outside the assembly? {t.IsVisible}" 

let t2 = typeof<Example.Nested>
printfn $"Is the {t2.FullName} class visible outside the assembly? {t2.IsVisible}" 

(* This example produces the following output:

Is the InternalOnly+Nested class visible outside the assembly? False
Is the Example+Nested class visible outside the assembly? True
 *)
Friend Class InternalOnly
    Public Class Nested
    End Class
End Class

Public Class Example
    Public Class Nested
    End Class

    Public Shared Sub Main()
        With GetType(InternalOnly.Nested)
            Console.WriteLine("Is the " & .FullName _ 
                & " class visible outside the assembly? " & .IsVisible)
        End With

        With GetType(Example.Nested)
            Console.WriteLine("Is the " & .FullName _ 
                & " class visible outside the assembly? " & .IsVisible)
        End With
    End Sub
End Class

' This example produces the following output:
'
'Is the InternalOnly+Nested class visible outside the assembly? False
'Is the Example+Nested class visible outside the assembly? True

Poznámky

Tato vlastnost slouží k určení, zda je typ součástí veřejného rozhraní sestavení součásti.

Platí pro