如何解决错误:不一致的可访问性:通用c#接口的参数类型?
在将此代码写入我的项目时,我收到了错误
错误1可访问性不一致:字段类型
'System.Collections.Generic.List'
比字段'Jain_milan.addchild.m_children'
更难访问
错误2可访问性不一致:参数类型'System.Collections.Generic.List'
比方法'Jain_milan.addchild.addchild(System.Collections.Generic.List)'
更难访问
namespace Jain_milan { public partial class addchild : Form { List
如果不发布您的完整相关代码,我会试着预感:
类Childrendata被声明为not-public和(我们可以看到)变量m_children是public
因此,公共变量无法公开不太容易访问的类型,在本例中为Childrendata
此外,您可能想要的是将m_children变为私有,这通常是最佳做法
我的猜测是Childrendata
类是private
(或internal
,或通过不指定可见性修饰符隐式internal
)
由于List
是公开的,因此Childrendata
需要公开。
将Childrendata
更改为public
,你应该没事。
Childrendata
不公开。 那么,您是否期望有人调用addchild
能够提供所需的参数?
明显的修复方法是更改addchild
或Childrendata
的可访问性。
只需将方法addChilde(List
或仅对象不列表然后执行此操作
var Listchild = childeren as List;
您不能两次使用访问修饰符。 如果您使用公共类,则不应使用实例public。 public partial class Record:ContentPage {List datas = new List(){我使用的是记录类public但不是list。
- Resolver或ServiceProvider使用ICompositeViewEngine所需的依赖项
- 如何为Console.WriteLine创建快捷方式
- 使用URI和DataContract类参数编写Web服务方法
- 获取处理器ID或某些硬件信息的最安全方法
- 同步捕获进程输出(即“发生时”)
- OdbcConnection文本驱动程序忽略scheme.ini设置
- 记录在log4net AdoNetAppender中延迟了?
- WCF返回ArrayOfKeyValueOfintstringKeyValueOfintstring 而不是List 和List instread of List
- 从AD获取扩展属性?