Compiler Error CS0051

Inconsistent accessibility: parameter type 'type' is less accessible than method 'method'

The return type and each of the types referenced in the formal parameter list of a method must be at least as accessible as the method itself. Make sure the types used in method signatures are not accidentally private due to the omission of the public modifier. For more information, see Access Modifiers.

Example

The following sample generates CS0051:

// CS0051.cs
public class A
{
    // Try making B public since F is public
    // B is implicitly private here.
    class B
    {
    }

    public static void F(B b)  // CS0051
    {
    }

    public static void Main()
    {
    }
}