Freigeben über


SqlCeLockTimeoutException-Klasse

Diese Ausnahme wird ausgelöst, wenn das Timeout für die Sperre erreicht wird.

Vererbungshierarchie

System.Object
  System.Exception
    System.SystemException
      System.Runtime.InteropServices.ExternalException
        System.Data.Common.DbException
          System.Data.SqlServerCe.SqlCeException
            System.Data.SqlServerCe.SqlCeLockTimeoutException

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

Syntax

'Declaration
<SerializableAttribute> _
Public Class SqlCeLockTimeoutException _
    Inherits SqlCeException
'Usage
Dim instance As SqlCeLockTimeoutException
[SerializableAttribute]
public class SqlCeLockTimeoutException : SqlCeException
[SerializableAttribute]
public ref class SqlCeLockTimeoutException : public SqlCeException
[<SerializableAttribute>]
type SqlCeLockTimeoutException =  
    class
        inherit SqlCeException
    end
public class SqlCeLockTimeoutException extends SqlCeException

Der SqlCeLockTimeoutException-Typ macht folgende Elemente verfügbar.

Konstruktoren

  Name Beschreibung
Geschützte Methode SqlCeLockTimeoutException Konstruktor, der die Serialisierung unterstützt.

Zum Anfang

Eigenschaften

  Name Beschreibung
Öffentliche Eigenschaft Data (von Exception vererbt)
Öffentliche Eigenschaft ErrorCode (von ExternalException vererbt)
Öffentliche Eigenschaft Errors Ruft eine Auflistung von mindestens einem SqlCeError-Objekt ab, die detaillierte Informationen über die vom .NET Compact Framework-Datenanbieter für SQL Server Compact generierten Ausnahmen enthält. (von SqlCeException vererbt)
Öffentliche Eigenschaft HelpLink (von Exception vererbt)
Öffentliche Eigenschaft HResult Ruft den HRESULT-Wert der Ausnahme ab. Dieser Wert entspricht dem Wert der HResult-Eigenschaft für die erste Instanz der SqlCeError-Klasse in der SqlCeErrorCollection-Klasse für die Ausnahme. (von SqlCeException vererbt)
Öffentliche Eigenschaft InnerException (von Exception vererbt)
Öffentliche Eigenschaft Message Ruft den Text ab, der die erste Instanz der SqlCeError-Klasse in der SqlCeErrorCollection-Klasse für diese Ausnahme beschreibt. (von SqlCeException vererbt)
Öffentliche Eigenschaft NativeError Ruft die systemeigene Fehlernummer der ersten SqlCeError-Klasse in der SqlCeErrorCollection-Auflistung ab. Weitere Informationen zu dem Fehler finden Sie in der Onlinedokumentation zu SQL Server Compact unter dem Thema "Fehler bei SQL Server Compact" im Abschnitt "Problembehandlung". (von SqlCeException vererbt)
Öffentliche Eigenschaft Source Ruft den Namen des OLE DB-Anbieters ab, der den Fehler generiert hat. (von SqlCeException vererbt)
Öffentliche Eigenschaft StackTrace (von Exception vererbt)
Öffentliche Eigenschaft TargetSite (von Exception vererbt)

Zum Anfang

Methoden

  Name Beschreibung
Öffentliche Methode Equals (von Object vererbt)
Geschützte Methode Finalize (von Object vererbt)
Öffentliche Methode GetBaseException (von Exception vererbt)
Öffentliche Methode GetHashCode (von Object vererbt)
Öffentliche Methode GetObjectData Sicherheitskritisch Füllt ein SerializationInfo-Element mit den erforderlichen Daten zum Serialisieren des Objekts auf. (Überschreibt SqlCeException.GetObjectData(SerializationInfo, StreamingContext).)
Öffentliche Methode GetType (von Exception vererbt)
Geschützte Methode MemberwiseClone (von Object vererbt)
Öffentliche Methode ToString (von Exception vererbt)

Zum Anfang

Hinweise

Weitere Informationen finden Sie unter "Sperren (SQL Server Compact)" in der Onlinedokumentation zu SQL Server Compact.

Beispiele

        Dim timeout As New TimeSpan(0, 0, 15) 'hours, minutes, seconds
        Dim startTime As DateTime = DateTime.Now

        While DateTime.Now - startTime < timeout
            Try
                Dim repl As New SqlCeReplication()

                repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll"
                repl.Publisher = "myPublisher"
                repl.PublisherDatabase = "AdventureWorks"
                repl.PublisherSecurityMode = SecurityType.NTAuthentication
                repl.Publication = "AdventureWorks"
                repl.Subscriber = "Test"
                repl.SubscriberConnectionString = "Data Source='MyDatabase.sdf';Password='';"
                repl.Synchronize()
            Catch exInProgress As SqlCeTransactionInProgressException
                Thread.Sleep(3000)
                GoTo ContinueWhile1
            Catch exTimeout As SqlCeLockTimeoutException
                ' Add your own error-handling logic here
                 GoTo ContinueWhile1
            Catch e As SqlCeException
                MessageBox.Show(e.Message)
            End Try
        ContinueWhile1:
        End While
        TimeSpan timeout = new TimeSpan(0 /*hours*/, 0 /* minutes */ , 15 /*seconds*/);
        DateTime startTime = DateTime.Now;

        while (DateTime.Now - startTime < timeout)
        {
            try
            {
                SqlCeReplication repl = new SqlCeReplication();

                repl.InternetUrl = "https://www.adventure-works.com/sqlmobile/sqlcesa35.dll";
                repl.Publisher = "myPublisher";
                repl.PublisherDatabase = "AdventureWorks";
                repl.PublisherSecurityMode = SecurityType.NTAuthentication;
                repl.Publication = "AdventureWorks";
                repl.Subscriber = "Test";
                repl.SubscriberConnectionString = "Data Source='MyDatabase.sdf';Password='';";
                repl.Synchronize();
            }
            catch (SqlCeTransactionInProgressException)
            {
                Thread.Sleep(3000);
                continue;
            }
            catch (SqlCeLockTimeoutException)
            {
                //add your own error-handling logic here
            }
            catch (SqlCeException e)
            {
                MessageBox.Show(e.Message);
            }
        }

Threadsicherheit

Alle öffentlichen statischen (in Microsoft Visual Basic freigegebenen) Elemente dieses Typs sind threadsicher. Für Instanzelemente kann nicht sichergestellt werden, dass sie threadsicher sind.

Siehe auch

Verweis

System.Data.SqlServerCe-Namespace