PropertyInfo.CanRead Proprietà

Definizione

Ottiene un valore che indica se è possibile leggere la proprietà.

public abstract bool CanRead { get; }

Valore della proprietà

true se è possibile leggere la proprietà; in caso contrario, false.

Implementazioni

Esempio

Nell'esempio seguente vengono definite due proprietà. La prima proprietà è leggibile e la CanRead proprietà è true. La seconda proprietà non è leggibile (non è disponibile una funzione di accesso) e la CanRead proprietà è false.

using System;
using System.Reflection;

// Define one readable property and one not readable.
public class Mypropertya
{
    private string caption = "A Default caption";
    public string Caption
    {
        get{return caption;}
        set {if(caption!=value) {caption = value;}
        }
    }
}
public class Mypropertyb
{
    private string caption = "B Default caption";
    public string Caption
    {
        set{if(caption!=value) {caption = value;}
        }
    }
}

class Mypropertyinfo
{
    public static int Main()
    {
        Console.WriteLine("\nReflection.PropertyInfo");

        // Define two properties.
        Mypropertya Mypropertya = new Mypropertya();
        Mypropertyb Mypropertyb = new Mypropertyb();

        Console.Write("\nMypropertya.Caption = " + Mypropertya.Caption);
        // Mypropertyb.Caption cannot be read, because
        // there is no get accessor.

        // Get the type and PropertyInfo.
        Type MyTypea = Type.GetType("Mypropertya");
        PropertyInfo Mypropertyinfoa = MyTypea.GetProperty("Caption");
        Type MyTypeb = Type.GetType("Mypropertyb");
        PropertyInfo Mypropertyinfob = MyTypeb.GetProperty("Caption");

        // Get and display the CanRead property.
        Console.Write("\nCanRead a - " + Mypropertyinfoa.CanRead);
        Console.Write("\nCanRead b - " + Mypropertyinfob.CanRead);

        return 0;
    }
}

Commenti

Se la proprietà non dispone di una get funzione di accesso, non può essere letto.

Per ottenere la proprietà, ottenere prima di CanRead tutto la classe Type. Dall'oggetto , ottenere l'oggetto TypePropertyInfo. Dall'oggetto PropertyInfo, ottenere il CanRead valore.

Si applica a

Prodotto Versioni
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0