Article ID: 308650
Article Last Modified on 7/15/2004
APPLIES TO
- Microsoft ADO.NET 1.0
- Microsoft Visual C# .NET 2002 Standard Edition
- Microsoft ADO.NET 1.1
- Microsoft Visual C# .NET 2003 Standard Edition
This article was previously published under Q308650
For a Microsoft Visual Basic .NET version of this article, see 308043.
For a Microsoft Visual C++ .NET version of this article, see 308651.
This article refers to the following Microsoft .NET Framework Class Library namespace:
- System.Data.OleDb
IN THIS TASK
SUMMARY
Managed providers can raise several exceptions. To obtain more detailed information about the cause, you need access to provider-specific error information.
back to the top
Requirements
The following list outlines the recommended hardware, software, network infrastructure, and service packs that you need:
- Microsoft .NET Framework
- Microsoft Visual C# .NET
This article assumes that you are familiar with the following topics:
- Exceptions
- Microsoft OLE DB
- Error handling
Steps to Obtain Underlying Provider Errors
To obtain more detailed information about the cause of an exception, wrap your code in a try-catch block, catch the exception, and process the Errors collection from the OleDbException class.
- Open a new Visual C# .NET Windows Application project.
Open Form1.cs in code, copy the following code, and paste the code at the beginning of the form:
using System.Data.OleDb;
Copy the following code into the Form1 Load event:
{ OleDbConnection cn = new OleDbConnection("Provider=SQLOLEDB.1;Data Source=MyWrongServerName"); try { cn.Open(); } catch (OleDbException ex) { for (int i = 0; i < ex.Errors.Count; i++) { MessageBox.Show("Index #" + i.ToString() + "\n" + "Message: " + ex.Errors[i].Message + "\n" + "Native: " + ex.Errors[i].NativeError.ToString() + "\n" + "Source: " + ex.Errors[i].Source + "\n" + "SQL: " + ex.Errors[i].SQLState + "\n"); } } }
- Run the application. A message box should appear after 10 to 15 seconds.
Troubleshooting
If you have a server named "MyWrongServerName," you may not receive an error.
back to the top
REFERENCES
Fore more information on .NET managed providers, refer to the following MSDN Web site:
Inside .NET Managed Providers
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dndive/html/data010112001.asp
Keywords: kbhowtomaster kbsystemdata KB308650