我正在尝试在我的类库中实现 C# 中使用的命名空间层次结构。这是我想要做的:
namespace Parent
{
namespace Child
{
Class ChildClass { }
}
Class ParentClass { }
}
编译类库后没有按预期工作。这是我预期的工作原理。
访问
ChildClass
一到using Parent.Child
.但是可以访问ParentClass
刚刚 using Parent
.我可以在不编译类库的情况下执行此操作,而是将 cs 文件添加到项目中。但是当我编译为 DLL 并将其添加为项目中的引用时,我无法访问子命名空间。
更新:我为每个类(class)准备了不同的文件。当我将所有命名空间和类写入一个文件时,它似乎可以工作。但为什么?
有没有办法在 C# 中实现这一点?
最佳答案
我想你的课不见了 public
;以下代码对我有用。
namespace Parent
{
namespace Child
{
public class ChildClass { }
}
public class ParentClass
{
}
}
我可以创造;
Parent.ParentClass p;
Parent.Child.ChildClass c;
这是您预期的工作原理。
编辑:为每个类方法单独的 cs 文件;
ParentClass.cs
namespace Parent
{
public class ParentClass{ }
}
ChildClass.cs
namespace Parent
{
namespace Child
{
public class ChildClass { }
}
}
这似乎对我有用。
关于c# - 类库命名空间层次结构不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34085510/