¿Cómo saber el problema real debido a qué SqlException se produce?

Quiero manejar diferentes problemas, mientras hago operaciones de base de datos, de manera diferente.

p.ej. La operación puede fallar debido a credenciales de base de datos incorrectas o debido a un problema de red. O puede fallar porque la consulta no es correcta (si el valor de cadena se pasa en la columna de tipo int)

En mi código C #, solo tenemosSqlException que tiene colección deSqlErrors. Sin embargo, hay muchos niveles de gravedad.

¿Cómo puedo identificar fácilmente la causa de la SqlException? ¿Cómo puedo determinar que la excepción se deba al problema de conectividad o falla de autenticación o al problema con la consulta?

Estoy usando SQL Server 2005.

Respuestas a la pregunta(2)

Su respuesta a la pregunta