Поделиться через


SqlErrorCollection Класс

Определение

Собирает все ошибки, созданные поставщиком данных .NET Framework для SQL Server. Этот класс не наследуется.

public ref class SqlErrorCollection sealed : System::Collections::ICollection
[System.ComponentModel.ListBindable(false)]
[System.Serializable]
public sealed class SqlErrorCollection : System.Collections.ICollection
[System.ComponentModel.ListBindable(false)]
public sealed class SqlErrorCollection : System.Collections.ICollection
public sealed class SqlErrorCollection : System.Collections.ICollection
[<System.ComponentModel.ListBindable(false)>]
[<System.Serializable>]
type SqlErrorCollection = class
    interface ICollection
    interface IEnumerable
[<System.ComponentModel.ListBindable(false)>]
type SqlErrorCollection = class
    interface ICollection
    interface IEnumerable
type SqlErrorCollection = class
    interface ICollection
    interface IEnumerable
Public NotInheritable Class SqlErrorCollection
Implements ICollection
Наследование
SqlErrorCollection
Атрибуты
Реализации

Примеры

В следующем примере каждый из них SqlError отображается в 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";

        using (SqlConnection connection = new SqlConnection(connectionString))
        {
            SqlCommand command = new SqlCommand(queryString, connection);
            try
            {
                command.Connection.Open();
                command.ExecuteNonQuery();
            }
            catch (SqlException ex)
            {
                DisplaySqlErrors(ex);
            }
        }
    }

    private static void DisplaySqlErrors(SqlException exception)
    {
        for (int i = 0; i < exception.Errors.Count; i++)
        {
            Console.WriteLine("Index #" + i + "\n" +
                "Error: " + exception.Errors[i].ToString() + "\n");
        }
        Console.ReadLine();
    }

    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";
    }
}

Комментарии

Этот класс создается для SqlException сбора экземпляров SqlError класса . SqlErrorCollection всегда содержит по крайней SqlError мере один экземпляр класса .

Свойства

Count

Получает число ошибок в коллекции.

Item[Int32]

Возвращает ошибку с указанным индексом.

Методы

CopyTo(Array, Int32)

Копирует элементы коллекции SqlErrorCollection в массив Array начиная с заданного индекса.

CopyTo(SqlError[], Int32)

Копирует элементы коллекции SqlErrorCollection в коллекцию SqlErrorCollection начиная с заданного индекса.

GetEnumerator()

Возвращает перечислитель, осуществляющий перебор элементов списка SqlErrorCollection.

Явные реализации интерфейса

ICollection.IsSynchronized

Описание этого члена см. в разделе IsSynchronized.

ICollection.SyncRoot

Описание этого члена см. в разделе SyncRoot.

Применяется к

См. также раздел