C#-编译器错误CS0051
可访问性不一致:参数类型“类型”比方法“方法”更难访问
方法的形式参数列表中引用的返回类型和每种类型必须至少与方法本身具有相同的可访问性。确保由于省略了public修饰符而导致方法签名中使用的类型不是偶然私有的。有关更多信息,请参见访问修饰符。
例
下面的示例生成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()
{
}
}
解决方法
在B类型前加上public,省略限制符则默认为private,和Java不同
// CS0051.cs
public class A
{
// Try making B public since F is public
// B is implicitly private here.
public class B
{
}
public static void F(B b)
{
}
public static void Main()
{
}
}