C# Language interne


Exemple

Le mot-clé interne rend une classe (y compris les classes imbriquées), la propriété, la méthode ou le champ disponible pour chaque consommateur du même assembly:

internal class Foo
{
    internal string SomeProperty {get; set;}
}

internal class Bar
{
    var myInstance = new Foo();
    internal string SomeField = foo.SomeProperty;

    internal class Baz
    {
        private string blah;
        public int N { get; set; }
    }
}

Cela peut être cassé pour permettre à un assembly de test d'accéder au code via l'ajout de code au fichier AssemblyInfo.cs:

using System.Runtime.CompilerServices;

[assembly:InternalsVisibleTo("MyTests")]