在 dll 上创建了重复的命名空间

Duplicated Namespace is created on dll

我正在 VS2019 (VB.NET) 中创建一个 class 库。

在项目属性中,我使用了这个根命名空间:Customer.App.Classlibrary

当我在另一个项目中编译和使用这个库时,我需要将它导入为

Import Customer.App.Classlibrary.Customer.App.Classlibrary

根命名空间重复....

有什么建议吗???

与 c# 不同,在 vb.net 中,您不需要围绕 class 命名空间,而是所有 vb.net 代码都从根命名空间开始,而无需指定。因此,当您编写要像这样使用的函数时

Namespace Customer.App.Classlibrary

    Public Module MyStaticCLass
        Public Sub Foo()

        End Sub
    End Module

End Namespace

命名空间 Customer.App.Classlibrary 已添加到根命名空间。

你的命名空间变成 RootNamespace.ClassNamespace = Customer.App.Classlibrary.Customer.App.Classlibrary

你需要做的

Imports Customer.App.Classlibrary.Customer.App.Classlibrary

修复: 只需从您的 class 定义中删除名称空间

'Namespace Customer.App.Classlibrary

Public Module MyStaticCLass
    Public Sub Foo()

    End Sub
End Module

'End Namespace

并且导入将只是

Imports Customer.App.Classlibrary

将根命名空间指定为 Customer 可能是一个更好的主意,您可以将 class 放在 Namespace App.Classlibrary 中,这将产生类似的效果,并带来额外的好处能够将同一程序集中的 classes 分成更细粒度的命名空间。这取决于您想要的设计。