2011-01-13 81 views
5

我想更新一些代碼。我有這個開頭的VB文件...sqlconnection未定義

Imports System.Data.SqlClient 
Imports System.Data.Sql 
Imports System.Data.SqlTypes 
Imports System.Configuration 

<script runat="server"> 

...它失敗在這裏......

Using oConn As SqlConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("tps_write").ConnectionString()) 

返回的錯誤...

「描述:在編譯此請求所需的資源編譯過程中發生錯誤,請仔細閱讀以下具體錯誤詳細信息並適當修改源代碼。

編譯器錯誤消息:BC30002:Type'SqlConnection'未定義。「

我是否缺少一些系統類?

編輯:我更新的代碼本...

Using oConn As System.Data.SqlClient.SqlConnection = New System.Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings("tps_write").ConnectionString()) 

...它接受它。爲什麼每次使用該類的對象時都需要明確寫出System.Data.SqlClient?

+1

你有沒有對System.Data.dll的引用? – 2011-01-13 20:36:51

+0

查看關於Jeff的回答的評論。此外,我試圖只輸入「Imports System.Data.dll」,它說它不認識它。 – 2011-01-13 20:47:04

回答

1

所以,事實證明這條線是問題...

Using oConn As SqlConnection = New SqlConnection(ConfigurationManager.ConnectionStrings("tps_write").ConnectionString()) 

...而不是使用 「tps_write,」 我改變了許可 「tpsWrite。」顯然,tps_write是一個過時的許可,不再在這裏使用。我希望錯誤信息更清楚。 ;)

感謝大家的幫忙!

0

如果您的項目是一個Web應用程序,您可能會缺少對System.Data的引用。在解決方案資源管理器中右鍵單擊該項目,然後轉到添加引用。在.NET選項卡上,選擇System.Data.dll並單擊確定。

+0

我試過這個和System.Data.dll不在列表中... – 2011-01-13 20:46:12

+0

嘗試沒有「.dll」。是列表中的System.Data? – Jeff 2011-01-13 21:47:19

0

確保您在web.config中指定了連接字符串。你應該看到一個標籤中有這樣

<connectionStrings> 
<--! Below is your connection string> 
<add name="ConnName" connectionString="Data Source=PROGRAMMER2\SQLServer;Initial Catalog=PPSSecurity;Integrated Security=true;" /> 
</connectionStrings> 
1

編輯:我更新的代碼本...

使用oConn作爲 System.Data.SqlClient.SqlConnection = 新 系統。 Data.SqlClient.SqlConnection(ConfigurationManager.ConnectionStrings(「tps_write」).ConnectionString())

...並且它接受它。爲什麼我需要 明確寫出 System.Data.SqlClient每次我使用 這個類的對象?

我最好的猜測是,有另一個類在那裏叫SqlConnection和.NET不知道要使用哪種類型,直到你指定一個System.Data.SqlClient.SqlConnection明確。