在另一个vb.net项目中使用函数和类

mar*_*han 5 .net vb.net visual-studio-2005

我将VB项目重构为2个项目,其中一个是实用程序库,我想与以后的项目共享。我的解决方案的布局是这样的:

Solution
|_ util
   |_ util.vb
|_ main project
   |_ (main project files)
Run Code Online (Sandbox Code Playgroud)

util被创建为类库,并将成员文件添加到其中。然后,我已将util添加到主项目的引用中。但是,当我尝试从主项目文件调用util.vb中的函数时,出现如下构建错误:

error BC30451: Name 'LogException' is not declared.
error BC30002: Type 'VarFile' is not defined.
Run Code Online (Sandbox Code Playgroud)

这些在util.vb中定义,当它是主项目的一部分时,它可以很好地编译。声明看起来像这样:(我已经修剪了细节)

Imports System.IO

Public Module utils

    Public Sub LogException(ByRef ex As Exception, Optional ByVal logFile As String = "", Optional ByVal logFolder As String = "")
' ...
    End Sub    

    Public Class VarFile
          ' ...
     End Class
End Module
Run Code Online (Sandbox Code Playgroud)

我可以将util.vb“作为链接”添加到主项目中,它将解决所有构建错误,但这似乎违反了重构类库的目的-我想单独开发该库,但并不总是有跟踪我尚未在主项目中添加的文件链接。有没有比这更好的方法了?

kbv*_*hnu 4

创建一个 dll 项目并将其作为您的库,然后从主项目添加对其的引用。所有这些都将归入一个解决方案。还设置构建顺序。使用Imports类似于的功能Imports System.IO