3

我在命名空间中有一个基类:

namespace n1
{
 public class c1
 {
 }
}

同一命名空间中的另一个类继承自c1

namespace n1
{
 public class c2:c1
 {
 }
}

我想c2在另一个命名空间中创建一个实例n2,因为n1它是一个库,并且n2是一个 Windows 窗体项目,我想在其中使用该库的类。我添加了对n1. 但是当我尝试时:

using n1;    

namespace n2
{
 public class c3
 {
  public c1 c1Instance=new c1();
  public c2 c2Instance=new c2();
 }
}

我收到此错误消息:

找不到类型或命名空间名称“c2”

我没有收到此错误c1

继承的类只是私有的吗?

4

2 回答 2

2

您需要引用包含 c2 的项目或 dll

于 2013-06-04T00:02:50.137 回答
0

您只需要从引用列表中删除引用的 dll(其中包含提到的类型' c2')并再次引用库(如果链接到解决方案,则作为 dll 或项目)。 它是通过实践发现的,没有找到原因。然而,它最常见的来源是直接引用放置在另一个项目的工作室文件夹中的 dll(例如x86\Releasebin\Debug)。因此,在我们的开发人员工作期间,我们经常多次更改配置和/或平台,最后是列表参考

可能引用了不在预期编译位置的 dll 库。在这种情况下,更好的解决方案是将我们的 dll 保存在名为“libs”的单独文件夹中并引用它,或者如果每次编译主项目时编译其他项目没有问题,则将该库作为Project引用。

于 2013-06-06T23:01:55.607 回答