0

我的 App_code 文件夹中有一个类模块。

Private _connection As MySqlConnection
Private _connStr As String

Public Function Connect(dbName As String) As Boolean
    Try
        _connStr = "Database=" & dbName & ";" & _
                "Data Source=192.16.0.1;" & _
                "User Id=user;Password=pass"
        _connection = New MySqlConnection(_connStr)
        _connection.Open()
        _connection.Close()
        Return True
    Catch ex As Exception
        _connection = Nothing
        Return False
    End Try
    Return False
End Function

我通常在网络表单应用程序中编程。为什么我不能从页面后面的 aspx 代码访问此功能?我为该类添加了导入语句。如果我让那个函数共享,我就不能拥有那些私有变量。

我像这样在我的 aspx 中调用该函数;

If Connect(dbName) then....

这让我出错“非共享成员需要对象引用”

4

2 回答 2

1

您需要将关键字“Shared”添加到方法签名中,如下所示:

Private Shared _connection As MySqlConnection
Private Shared _connStr As String
Public Shared Function Connect(dbName As String) As Boolean

这是因为否则您有实例类成员,而不是静态成员。编译器错误消息是不言自明的。

于 2012-09-07T19:30:09.963 回答
1

如果您查看此示例有效:

   Public Shared Function example123(ByVal USER As Integer, ByVal Section As String,   ByVal ACTION As String) As Boolean

您分配了一个共享功能,以便您可以从课堂外看到它

我希望你工作

于 2012-09-07T19:37:20.357 回答