我正在使用.NET C#中的Windows应用程序项目。 我创建了一个库文件命名空间 xyz ,其中包含3个类 class1,class2 和 class3 。
添加libaray引用后,当我在WinForms应用程序中使用 xyz 命名空间时
(using XYZ;
),
然后键入" xyz 。"在列表中只显示一个 class1 类;其他2个课程无法访问。
Waht可能是问题?
答案 0 :(得分:3)
class
的默认访问修饰符为internal
,无法在library
之外访问。
所以明确将您的班级访问修饰符设为public
,如下所示:
public class MyClass
{
}
答案 1 :(得分:1)
确保将这些类标记为public
。
您可以使用public
访问修饰符,如下所示:
public class class3
{
// fields, properties, methods, etc.
}
答案 2 :(得分:0)
我可能会强烈认为class2
命名空间中的其他类(class2
,xyz
)未使用public
访问修饰符声明,并且可能已标记使用internal
,默认(未指定任何内容!)。
class
或任何其他成员如果不是public
,则不会从您的程序集中访问。
来自MSDN:
public关键字是类型和类型成员的访问修饰符。 公共访问是最宽松的访问级别。没有 访问公共成员的限制。
改变它:
namespace xyz
{
public class class2{....}
public class class3{...}
}
答案 3 :(得分:-4)
两个词:访问修饰符。周期。