none
运行报错:可访问不一致性 怎么解决? RRS feed

  • 问题

  • 错误 1 可访问性不一致: 参数类型“Waterresource1.ControlsSynchronizer”比方法“Waterresource1.OpenNewMapDocument.OpenNewMapDocument(Waterresource1.ControlsSynchronizer)”的可访问性低 C:\1AAA\0s\Waterresource1\Waterresource1\OpenNewMapDocument.cs 81 16 Waterresource1

    请问是什么原因,怎么解决?谢谢了

    2010年11月3日 2:46

答案

  • 当你在一个访问性比较强(例如公共)的字段/属性/方法里使用自定义类型,而这个类型访问性比较低(例如保护/私有)的时候就发生这个问题了 

    简单一点说: 

    public class ClassA { 
    private class SubclassB{ 
    ... 
    } 

    public SubclassB InstanceOfB; 
    } 
    2010年11月4日 3:16
    版主
  • 把基类ControlsSynchronizer 设置为public即可
    2010年11月5日 2:04

全部回复

  • 错误 1 可访问性不一致: 参数类型“Waterresource1.ControlsSynchronizer”比方法“Waterresource1.OpenNewMapDocument.OpenNewMapDocument(Waterresource1.ControlsSynchronizer)”的可访问性低 C:\1AAA\0s\Waterresource1\Waterresource1\OpenNewMapDocument.cs 81 16 Waterresource1

    请问是什么原因,怎么解决?谢谢了

    2010年11月3日 2:49
  • 当你在一个访问性比较强(例如公共)的字段/属性/方法里使用自定义类型,而这个类型访问性比较低(例如保护/私有)的时候就发生这个问题了 

    简单一点说: 

    public class ClassA { 
    private class SubclassB{ 
    ... 
    } 

    public SubclassB InstanceOfB; 
    } 
    2010年11月4日 3:16
    版主
  • 把基类ControlsSynchronizer 设置为public即可
    2010年11月5日 2:04