Assembly makes internal types and internal members visible to the assembly called your_assemblies. : Assembly « Reflection « C# / CSharp Tutorial






// compile with: /target:library
using System.Runtime.CompilerServices;
using System;

[assembly:InternalsVisibleTo("your_assemblies")]
class Class1 
{
    public void Test() 
    {
        Console.WriteLine("Class1.Test");
    }
}
public class Class2 
{
    internal void Test() 
    {
        Console.WriteLine("Class2.Test");
    }
}

// cs_friend_assemblies_2.cs
// compile with: /reference:cs_friend_assemblies.dll /out:your_assemblies.exe
public class M 
{
    static void Main() 
    {
        Class1 a = new Class1();
        a.Test();

        Class2 b = new Class2();
        b.Test();
    }
}








19.12.Assembly
19.12.1.Load Assembly from Dll
19.12.2.Reflecting An Assembly
19.12.3.Reflecting On A Type
19.12.4.Execute Assembly
19.12.5.Search member method in Assembly
19.12.6.Assembly Tree Viewer
19.12.7.DefineDynamicAssembly method and AssemblyResolve event.
19.12.8.Assembly makes internal types and internal members visible to the assembly called your_assemblies.
19.12.9.Use the file name to load the assembly into the current application domain.