Search code examples
c#.net-assemblyinternal

c# assembly, friend assembly


The definition for C# internal access modifier is internal: Accessible only within containing assembly or friend assemblies. So my question is what is c# assembly? what does it mean to be within containing assembly or friend assemblies? Does it mean within same namespace or project?


Solution

  • An assembly is (in general) a single .dll or .exe file.
    A C# project (in general) compiles to a single assembly.

    You can mark a friend assembly using the [assembly: InternalsVisibleTo(...)] attribute.