FieldInfo.IsFamilyAndAssembly Özellik

Tanım

Bu alanın görünürlüğünün ile FamANDAssemaçıklanıp açıklanmadığını belirten bir değer alır; başka bir ifadeyle, alana türetilmiş sınıflardan erişilebilir, ancak yalnızca aynı derlemede olmaları gerekir.

C#
public bool IsFamilyAndAssembly { get; }

Özellik Değeri

true bu alana erişim tam olarak tarafından FamANDAssemaçıklanmışsa; aksi takdirde, false.

Uygulamalar

Örnekler

Aşağıdaki kod örneği, farklı görünürlük düzeylerine sahip alanları tanımlar ve bunların IsAssembly, IsFamily, IsFamilyOrAssemblyve IsFamilyAndAssembly özelliklerinin değerlerini görüntüler.

C#
using System;
using System.Reflection;

public class Example
{
    public int f_public;
    internal int f_internal;
    protected int f_protected;
    protected internal int f_protected_public;
    private protected int f_private_protected;

    public static void Main()
    {
        Console.WriteLine("\n{0,-30}{1,-18}{2}", "", "IsAssembly", "IsFamilyOrAssembly");
        Console.WriteLine("{0,-21}{1,-18}{2,-18}{3}\n",
            "", "IsPublic", "IsFamily", "IsFamilyAndAssembly");

        foreach (FieldInfo f in typeof(Example).GetFields(
            BindingFlags.Instance | BindingFlags.NonPublic | BindingFlags.Public))
        {
            Console.WriteLine("{0,-21}{1,-9}{2,-9}{3,-9}{4,-9}{5,-9}",
                f.Name,
                f.IsPublic,
                f.IsAssembly,
                f.IsFamily,
                f.IsFamilyOrAssembly,
                f.IsFamilyAndAssembly
            );
        }
    }
}

/* This code example produces output similar to the following:

                              IsAssembly        IsFamilyOrAssembly
                     IsPublic          IsFamily          IsFamilyAndAssembly

f_public             True     False    False    False    False
f_internal           False    True     False    False    False
f_protected          False    False    True     False    False
f_protected_public   False    False    False    True     False
f_private_protected  False    False    False    False    True
 */

Açıklamalar

Bir alan düzey görünürlüğüne sahipse FamANDAssem , aynı derlemede bulunan türetilmiş bir sınıftaki herhangi bir üyeden çağrılabilir, ancak başka bir türden çağrılabilir.

Bir alanın görünürlüğü, görünürlük değiştiricisinin C# dilinde, Private Protected Visual Basic'te veya protected private C++ içinde olup olmadığını private protected tam olarak açıklamaktadırFieldAttributes.FamANDAssem.

Şunlara uygulanır

Ürün Sürümler
.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, 10
.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

Ayrıca bkz.