Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 是否有一个“问题”;“本项目”;或;“本大会”;进口商品的别名?_Vb.net_Namespaces - Fatal编程技术网

Vb.net 是否有一个“问题”;“本项目”;或;“本大会”;进口商品的别名?

Vb.net 是否有一个“问题”;“本项目”;或;“本大会”;进口商品的别名?,vb.net,namespaces,Vb.net,Namespaces,我正在编写一些大量使用B和C的实用程序代码,因此在顶部我导入了这个项目。太好了,直到我想在那个项目中使用这个文件。我通常链接到这样的代码,因此更改它会中断其他项目 我认为名称空间是解决方案,但这为空间添加了另一层,因此项目名称仍然存在。我做错了吗 或者,导入中是否有“ThisProject”的语法?我一定是做错了什么-最后一个例子是,我必须导入ThatProject.ThisProject.Foo。是的,它在我导入的名称空间中。一个项目有一个根名称空间。你可以把它变成一根空绳子,但你不把腿打掉的

我正在编写一些大量使用B和C的实用程序代码,因此在顶部我导入了这个项目。太好了,直到我想在
那个项目中使用这个文件。我通常链接到这样的代码,因此更改它会中断其他项目

我认为
名称空间
是解决方案,但这为空间添加了另一层,因此项目名称仍然存在。我做错了吗


或者,导入中是否有“ThisProject”的语法?

我一定是做错了什么-最后一个例子是,我必须
导入ThatProject.ThisProject.Foo
。是的,它在我导入的名称空间中。一个项目有一个根名称空间。你可以把它变成一根空绳子,但你不把腿打掉的几率很低。这是一个又一个错误的做法,不要在项目中复制源文件。NET Framework使得使用来自另一个程序集的类变得非常简单。那么,与其使用空字符串,不如在不同的项目中使用相同的根命名空间?有什么理由不这样做吗?
Public Class A
    Public Class B ... End Class
    Public Class C ... End Class
End Class
apple.vb
    Namespace ThisProject.Foo
        Public Class Apple
        ' stuff
        End Class
    End Namespace

orange.vb
    Namespace ThisProject.Foo
        Public Class Orange
        ' other stuff
        End Class
    End Namespace

banana.vb
    Namespace ThisProject.Foo
        Public Class Banana
        ' yet more stuff
        End Class
    End Namespace

(ThisProject)someotherclass.vb
    Imports Foo
    ' other stuff in the class
    Private Sub Blah()
        Dim x as new Banana()
    End Sub

(ThatProject)yetanotherclass.vb
    Imports ThisProject.Foo
    ' other functions, etc
    Private Sub Cool()
        Dim y as new Orange()
    End Sub