Share via


SqlCeErrorCollection Class

Collects all errors generated by the .NET Compact Framework Data Provider for SQL Server Compact. This class cannot be inherited.

Inheritance Hierarchy

System.Object
  System.Data.SqlServerCe.SqlCeErrorCollection

Namespace:  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Syntax

'Declaration
<SerializableAttribute> _
Public NotInheritable Class SqlCeErrorCollection _
    Implements ICollection, IEnumerable
'Usage
Dim instance As SqlCeErrorCollection
[SerializableAttribute]
public sealed class SqlCeErrorCollection : ICollection, 
    IEnumerable
[SerializableAttribute]
public ref class SqlCeErrorCollection sealed : ICollection, 
    IEnumerable
[<SealedAttribute>]
[<SerializableAttribute>]
type SqlCeErrorCollection =  
    class
        interface ICollection
        interface IEnumerable
    end
public final class SqlCeErrorCollection implements ICollection, IEnumerable

The SqlCeErrorCollection type exposes the following members.

Properties

  Name Description
Public property Count Gets the number of SqlCeError objects in the collection.
Public property Item Gets the error at the specified index.

Top

Methods

  Name Description
Public method CopyTo Copies the elements of the SqlCeErrorCollection into an Array, starting at the given index within the Array.
Public method Equals (inherited from Object)
Protected method Finalize (inherited from Object)
Public method GetEnumerator Infrastructure. Returns an enumerator that can iterate through the SqlCeErrorCollection.
Public method GetHashCode (inherited from Object)
Public method GetType (inherited from Object)
Protected method MemberwiseClone (inherited from Object)
Public method ToString (inherited from Object)

Top

Explicit Interface Implementations

  Name Description
Explicit interface implemetationPrivate property ICollection.IsSynchronized
Explicit interface implemetationPrivate property ICollection.SyncRoot

Top

Remarks

This class is created by SqlCeException to collect instances of the SqlCeError class. SqlCeErrorCollection always contains at least one instance of the SqlCeError class.

Examples

The following example displays each SqlCeError within the SqlCeErrorCollection collection.

Public Sub DisplaySqlCeErrors(ByVal errorCollection As SqlCeErrorCollection)

    Dim err As SqlCeError
    Dim bld As New StringBuilder()

    For Each err In errorCollection
        bld.Append((ControlChars.Cr & " Error Code: " & err.HResult.ToString("X")))
        bld.Append((ControlChars.Cr & " Message   : " & err.Message))
        bld.Append((ControlChars.Cr & " Minor Err.: " & err.NativeError))
        bld.Append((ControlChars.Cr & " Source    : " & err.Source))

        Dim numPar As Integer
        For Each numPar In err.NumericErrorParameters
            If 0 <> numPar Then
                bld.Append((ControlChars.Cr & " Num. Par. : " & numPar))
            End If
        Next numPar

        Dim errPar As String
        For Each errPar In err.ErrorParameters
            If [String].Empty <> errPar Then
                bld.Append((ControlChars.Cr & " Err. Par. : " & errPar))
            End If
        Next errPar

        MessageBox.Show(bld.ToString())
        bld.Remove(0, bld.Length)
    Next err

End Sub 'DisplaySqlCeErrors
public void DisplaySqlCeErrors(SqlCeErrorCollection errorCollection ) {
    StringBuilder bld = new StringBuilder();

    foreach (SqlCeError err in errorCollection) {
        bld.Append("\n Error Code: " + err.HResult.ToString("X"));
        bld.Append("\n Message   : " + err.Message);
        bld.Append("\n Minor Err.: " + err.NativeError);
        bld.Append("\n Source    : " + err.Source);

        foreach (int numPar in err.NumericErrorParameters) {
            if (0 != numPar) bld.Append("\n Num. Par. : " + numPar);
        }

        foreach (string errPar in err.ErrorParameters) {
            if (String.Empty != errPar) bld.Append("\n Err. Par. : " + errPar);
        }

        MessageBox.Show(bld.ToString());
        bld.Remove(0, bld.Length);
    }
}

Thread Safety

Any public static (Shared in Microsoft Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

System.Data.SqlServerCe Namespace

SqlCeError

SqlCeException