我是 c# .Net 的新手。在我的解决方案中,两个命名空间不能互相看到。
我有项目 A,其中有部分类 c1 和一些方法。具有不同命名空间的项目 B 也有一个部分类 c1,项目 A 中的一些同名方法和其他一些方法。
我在项目 A 中添加了对项目 B 的引用,在项目 A 类中包含使用命名空间 B。
但是仍然在A中,我无法使用B中c1类中的内容,我只能从A本身中看到c1类的方法。我想在 A 的两个项目中使用 c1 的方法。
有人可以帮我吗?我正在使用 .Net 框架 4
我是 c# .Net 的新手。在我的解决方案中,两个命名空间不能互相看到。
我有项目 A,其中有部分类 c1 和一些方法。具有不同命名空间的项目 B 也有一个部分类 c1,项目 A 中的一些同名方法和其他一些方法。
我在项目 A 中添加了对项目 B 的引用,在项目 A 类中包含使用命名空间 B。
但是仍然在A中,我无法使用B中c1类中的内容,我只能从A本身中看到c1类的方法。我想在 A 的两个项目中使用 c1 的方法。
有人可以帮我吗?我正在使用 .Net 框架 4
B 可能是另一个命名空间中的完整类,但仅定义为特定文件中的部分类。正如@tzerb 所提到的,您不能在两个不同的命名空间中有两个相同的部分类 - 由于命名空间不同,类名本身(完全限定)是不同的。
如果您只需要在 A 类中使用 B 类的方法(并可能覆盖它们),您可以使用继承:
class A: B
{
// override methods from B
// or call base.<method> when needed
}
或遏制:
class A
{
private B _b;
// construct and use _b methods directly
}
A
如果是 a 则使用继承B
,否则使用包含。
部分类必须共享一个命名空间。称为 c1 的两个部分类是完全不同的类。