HOW TO: Ottenere errori sottostanti del provider utilizzando ADO.NET in Visual Basic .NET

Questo articolo è stato precedentemente pubblicato con il codice di riferimento I308043
Questo articolo è stato archiviato. L’articolo, quindi, viene offerto “così come è” e non verrà più aggiornato.
Per la versione di questo articolo relativa a Microsoft Visual C# .NET, vedere (gli articoli con prefisso "Q" contengono informazioni in inglese): 308650.
Per la versione di questo articolo relativa a Microsoft Visual C++, vedere (gli articoli con prefisso "Q" contengono informazioni in inglese): 308651.

CONTENUTO DELL'ATTIVITÀ

Sommario
I provider gestiti possono generare varie eccezioni. Per informazioni più dettagliate sulla causa, è necessario accedere alle informazioni sugli errori specifiche del provider. In questo articolo viene spiegato come ottenere gli errori sottostanti del provider utilizzando ADO.NET in Visual Basic .NET.

Torna all'inizio

Requisiti

Nell'elenco che segue vengono indicati l'hardware, il software, l'infrastruttura di rete e i Service Pack necessari:
  • Microsoft .NET Framework
  • Microsoft Visual Basic .NET
In questo articolo si presume la conoscenza dei seguenti argomenti:
  • Eccezioni
  • Microsoft OLE DB
  • Gestione degli errori
Torna all'inizio

Procedure per ottenere i messaggi sottostanti del provider

Per ottenere informazioni più dettagliate riguardo alla causa di un errore, utilizzare un wrapper per racchiudere il codice in un blocco try-catch, intercettare l'eccezione ed elaborare l'insieme Errors dalla classe OleDbException.
  1. Avviare Microsoft Visual Studio .NET e creare un nuovo progetto applicazione Windows in Visual Basic .NET. In base all'impostazione predefinita viene creato il progetto Form1.
  2. Aprire Form1.vb nel codice, copiare il codice seguente e incollarlo all'inizio del form:
    Imports System.Data.OleDb
  3. Copiare il seguente codice nell'evento Load di Form1:
    Dim ex As OleDbExceptionDim cn As OleDbConnection = New OleDbConnection("Provider=SQLOLEDB.1;Data Source=MyWrongServerName")Try    cn.Open()Catch ex    Dim i As Integer    For i = 0 To ex.Errors.Count - 1        MessageBox.Show("Index #" + i.ToString() + ControlChars.Cr _           + "Message: " + ex.Errors(i).Message + ControlChars.Cr _           + "Native: " + ex.Errors(i).NativeError.ToString() + ControlChars.Cr _           + "Source: " + ex.Errors(i).Source + ControlChars.Cr _           + "SQL: " + ex.Errors(i).SQLState + ControlChars.Cr)    Next iEnd Try
  4. Eseguire l'applicazione. Dopo 10-15 secondi dovrebbe essere visualizzata una finestra di messaggio.
Torna all'inizio

Risoluzione dei problemi

Se si dispone di un server chiamato "MyWrongServerName" l'errore potrebbe non essere visualizzato.

Torna all'inizio

RIFERIMENTI

Per ulteriori informazioni sui provider .NET gestiti, vedere il seguente sito Web MSDN (informazioni in lingua inglese):Torna all'inizio
Proprietà

ID articolo: 308043 - Ultima revisione: 02/26/2014 18:10:24 - Revisione: 2.0

Microsoft ADO.NET (fornito con .NET Framework), Microsoft Visual Basic .NET 2002 Standard Edition

  • kbnosurvey kbarchive kbhowto kbhowtomaster KB308043
Feedback