Classe SqlCeLockTimeoutException
Esta exceção será lançada se o tempo limite do bloqueio for atingido.
Hierarquia de herança
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 (em System.Data.SqlServerCe.dll)
Sintaxe
'Declaração
<SerializableAttribute> _
Public Class SqlCeLockTimeoutException _
Inherits SqlCeException
'Uso
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
O tipo SqlCeLockTimeoutException expõe os membros a seguir.
Construtores
Nome | Descrição | |
---|---|---|
SqlCeLockTimeoutException | Construtor que auxilia na serialização. |
Início
Propriedades
Nome | Descrição | |
---|---|---|
Data | (herança de Exception) | |
ErrorCode | (herança de ExternalException) | |
Errors | Obtém uma coleção de um ou mais objetos SqlCeError que contêm informações detalhadas sobre as exceções geradas pelo Provedor de Dados do .NET Compact Framework para SQL Server Compact. (herança de SqlCeException) | |
HelpLink | (herança de Exception) | |
HResult | Obtém o valor HRESULT da exceção. Esse valor é igual ao valor de HResult para a primeira instância de SqlCeError na SqlCeErrorCollection para a exceção. (herança de SqlCeException) | |
InnerException | (herança de Exception) | |
Message | Obtém o texto que descreve a primeira instância de SqlCeError na SqlCeErrorCollection para esta exceção. (herança de SqlCeException) | |
NativeError | Obtém o número do erro nativo do primeiro SqlCeError da SqlCeErrorCollection. Para obter mais informações sobre o erro, consulte o tópico "Erros do SQL Server Compact" na seção de Solução de Problemas dos Manuais Online do SQL Server Compact. (herança de SqlCeException) | |
Source | Obtém o nome do provedor OLE DB que gerou o erro. (herança de SqlCeException) | |
StackTrace | (herança de Exception) | |
TargetSite | (herança de Exception) |
Início
Métodos
Nome | Descrição | |
---|---|---|
Equals | (herança de Object) | |
Finalize | (herança de Object) | |
GetBaseException | (herança de Exception) | |
GetHashCode | (herança de Object) | |
GetObjectData | Segurança crítica. Popula um SerializationInfo com os dados necessários para serializar o objeto. (Substitui SqlCeException.GetObjectData(SerializationInfo, StreamingContext).) | |
GetType | (herança de Exception) | |
MemberwiseClone | (herança de Object) | |
ToString | (herança de Exception) |
Início
Comentários
Para obter mais informações, consulte o tópico "Bloqueando o (SQL Server Compact)" nos Manuais Online do SQL Server Compact.
Exemplos
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);
}
}
Segurança de thread
Qualquer membro estático público (Shared no Microsoft Visual Basic) desse tipo é seguro para threads. Não há garantia de que qualquer membro de instância seja seguro para threads.