2011-01-13 22 views
5

Ich versuche, etwas Code zu aktualisieren. Ich habe eine vb-Datei, die mit diesem beginnt ...sqlconnection ist nicht definiert

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

<script runat="server"> 

... und es versagt hier ...

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

Der Fehler kehrt ist ...

"Beschreibung: Bei der Kompilierung einer Ressource ist ein Fehler aufgetreten, der für die Bearbeitung dieser Anforderung erforderlich ist. Überprüfen Sie die folgenden spezifischen Fehlerdetails, und ändern Sie den Quellcode entsprechend.

Compiler Fehlermeldung: BC30002: Typ 'SqlConnection' ist nicht definiert. "

Fehle ich eine Systemklasse?

EDIT: ich den Code zu diesem aktualisiert ...

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

... und sie akzeptiert es. Warum muss ich System.Data.SqlClient jedes Mal explizit ausschreiben, wenn ich ein Objekt aus dieser Klasse verwende ???

+1

Haben Sie einen Verweis auf System.Data.dll? –

+0

Siehe Jeffs Antwort. Außerdem habe ich versucht, einfach "Imports System.Data.dll" einzugeben und es sagt, dass es es nicht erkennt. –

Antwort

1

So stellt sich diese Linie die Frage ...

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

war aus ... statt mit „tps_write“ Ich habe die Erlaubnis auf „tpsWrite.“ Anscheinend ist das tps_write eine veraltete Berechtigung, die hier bei der Arbeit nicht mehr verwendet wird. Ich wünschte, die Fehlermeldungen wären klarer. ;)

Danke für die Hilfe aller!

+0

Freut mich zu hören, dass alles funktioniert. :) –

0

Wenn Ihr Projekt eine Webanwendung ist, fehlt möglicherweise ein Verweis auf System.Data. Klicken Sie mit der rechten Maustaste auf das Projekt im Projektmappen-Explorer, und gehen Sie zu Referenzen hinzufügen. Wählen Sie auf der Registerkarte .NET System.Data.dll aus, und klicken Sie auf OK.

+0

Ich habe dies versucht und System.Data.dll war nicht in der Liste ... –

+0

Versuchen Sie es ohne ".dll". War System.Data in der Liste? – Jeff

0

Vergewissern Sie sich, dass Sie Ihre Verbindungszeichenfolge in der Datei web.config angegeben haben. Sie sollten einen Tag dort ähnliche

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

EDIT sehen: ich den Code zu diesem aktualisiert ...

Mit oConn Als System.Data.SqlClient.SqlConnection = New -System. Data.SqlClient.SqlConnection (ConfigurationManager.ConnectionStrings ("tps_write"). ConnectionString())

... und akzeptiert. Warum muss ich explizit schreiben System.Data.SqlClient jedes Mal, wenn ich ein Objekt aus dieser Klasse verwenden ???

Meine beste Vermutung ist, dass es dort rief eine andere Klasse ist SqlConnection und .NET nicht weiß, welche Art zu verwenden, bis Sie die System.Data.SqlClient.SqlConnection eine explizit angeben.

+0

Versucht, dass kein Glück ... –

+0

@Ant, habe ich meine Antwort nach dem Lesen Ihrer Bearbeitung bearbeitet. Irgendwelche anderen Klassen oder irgendetwas in deiner App namens 'SqlConnection'? –

+0

Guten Ruf. Ich denke, das könnte das Problem sein. Ich werde weiter nachforschen müssen. Vielen Dank! –