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 | |
---|---|---|
SqlCeLockTimeoutException | Konstruktor, der die Serialisierung unterstützt. |
Zum Anfang
Eigenschaften
Name | Beschreibung | |
---|---|---|
Data | (von Exception vererbt) | |
ErrorCode | (von ExternalException vererbt) | |
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) | |
HelpLink | (von Exception vererbt) | |
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) | |
InnerException | (von Exception vererbt) | |
Message | Ruft den Text ab, der die erste Instanz der SqlCeError-Klasse in der SqlCeErrorCollection-Klasse für diese Ausnahme beschreibt. (von SqlCeException vererbt) | |
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) | |
Source | Ruft den Namen des OLE DB-Anbieters ab, der den Fehler generiert hat. (von SqlCeException vererbt) | |
StackTrace | (von Exception vererbt) | |
TargetSite | (von Exception vererbt) |
Zum Anfang
Methoden
Name | Beschreibung | |
---|---|---|
Equals | (von Object vererbt) | |
Finalize | (von Object vererbt) | |
GetBaseException | (von Exception vererbt) | |
GetHashCode | (von Object vererbt) | |
GetObjectData | Sicherheitskritisch Füllt ein SerializationInfo-Element mit den erforderlichen Daten zum Serialisieren des Objekts auf. (Überschreibt SqlCeException.GetObjectData(SerializationInfo, StreamingContext).) | |
GetType | (von Exception vererbt) | |
MemberwiseClone | (von Object vererbt) | |
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.