Sdílet prostřednictvím


SqlException.Class Vlastnost

Definice

Získá úroveň závažnosti chyby vrácené zprostředkovatele dat rozhraní .NET Framework pro SQL Server.

public:
 property System::Byte Class { System::Byte get(); };
public byte Class { get; }
member this.Class : byte
Public ReadOnly Property Class As Byte

Hodnota vlastnosti

Hodnota od 1 do 25, která označuje úroveň závažnosti chyby.

Příklady

Následující příklad zobrazí každý z nich SqlError v kolekci SqlErrorCollection .

using Microsoft.Data.SqlClient;
using System.Text;

class Program
{
    static void Main()
    {
        string s = GetConnectionString();
        ShowSqlException(s);
        Console.ReadLine();
    }

    public static void ShowSqlException(string connectionString)
    {
        string queryString = "EXECUTE NonExistantStoredProcedure";
        StringBuilder errorMessages = new StringBuilder();

        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            SqlCommand command = new SqlCommand(queryString, connection);
            try
            {
                command.Connection.Open();
                command.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                for (int i = 0; i < ex.Errors.Count; i++)
                {
                    errorMessages.Append("Index #" + i + "\n" +
                        "Message: " + ex.Errors[i].Message + "\n" +
                        "Error Number: " + ex.Errors[i].Number + "\n" +
                        "LineNumber: " + ex.Errors[i].LineNumber + "\n" +
                        "Source: " + ex.Errors[i].Source + "\n" +
                        "Procedure: " + ex.Errors[i].Procedure + "\n");
                }
                Console.WriteLine(errorMessages.ToString());
            }
        }
    }

    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file.
        return "Data Source=(local);Initial Catalog=AdventureWorks;"
            + "Integrated Security=SSPI";
    }
}

Poznámky

Zprávy, které mají úroveň závažnosti 10 nebo nižší, jsou informativní a označují problémy způsobené chybami v informacích, které uživatel zadal. Úrovně závažnosti od 11 do 16 generuje uživatel a může je opravit. Úrovně závažnosti od 17 do 25 značí chyby softwaru nebo hardwaru. Když dojde k chybě úrovně 17, 18 nebo 19, můžete pokračovat v práci, i když nemusí být možné provést konkrétní příkaz.

Hodnota zůstane otevřená SqlConnection , pokud je úroveň závažnosti 19 nebo nižší. Pokud je úroveň závažnosti 20 nebo vyšší, server obvykle zavře SqlConnection. Uživatel ale může znovu otevřít připojení a pokračovat. V obou případech se vygeneruje SqlException metodou, která spouští příkaz .

Informace o upozorněních a informačních zprávách odesílaných SQL Server najdete v části Řešení potíží v dokumentaci k SQL Server.

Toto je obálka pro Class vlastnost prvního SqlError objektu Errors ve vlastnosti .

Pokud Errors je null, vrátí se default hodnota pro byte .

Platí pro

Viz také