在我正在构建的类库中,我包含来自HtmlAgilityPack的文件。我的问题:我应该围绕HtmlAgilityPack类包装我的命名空间吗?例如:
namespace HtmlAgilityPack {
internal... // blah blah blah
}
变为:
namespace MyNamespace {
namespace HtmlAgilityPack {
internal... // blah blah blah
}
}
我正在考虑这样做以防止已经使用HtmlAgilityPack的项目发生冲突。有没有其他理由这样做?谢谢,
答案 0 :(得分:1)
不,我认为你不必担心这个问题。对于已经使用HtmlAgilityPack的项目,您只需与它们共享HtmlAgilityPack命名空间即可。我不认为这里存在冲突问题。
答案 1 :(得分:1)
用户应该能够使用命名空间唯一地标识类名,这就是名称空间的全部概念。有像别名的解决方法,但我不会为您的库的用户介绍此问题。在这种情况下,我会按照你的建议包装HtmlAgility
命名空间。
答案 2 :(得分:1)
而不是:
namespace MyNamespace {
namespace HtmlAgilityPack {
internal... // blah blah blah
}
}
做
namespace MyNamespace.HtmlAgilityPack
{
internal... // blah blah blah
}
这是一种常见的方式,是的,这样做很好,因为这个命名空间还活着。