2012-09-07 21 views
0

我在我的App_code文件夾中有一個類模塊。在asp.net文件系統網站中的類模塊

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 

我通常在webform應用程序中編程。爲什麼我不能從頁面後面的aspx代碼訪問這個函數?我添加了該類的導入語句。如果我讓這個函數共享我不能有這些私有變量。

我在aspx裏調用了函數,

If Connect(dbName) then....

這使我的錯誤「非共享成員需要一個對象引用」

+0

怎麼叫外面看看吧功能? – codingbiz

+0

我編輯了我原來的帖子 – dinotom

回答

1

您需要在「共享」的關鍵字添加到方法簽名,就像這樣:

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

這是因爲否則你有實例類成員,而不是靜態成員。編譯器錯誤信息是不言自明的。

1

,如果你看看下面這個例子的工作原理:

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

您分配一個功能共享,所以你可以從類

我希望你工作