Share via


Clase SqlCeLockTimeoutException

Esta excepción se produce si se ha alcanzado el tiempo de espera del bloqueo.

Jerarquía de herencia

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

Espacio de nombres:  System.Data.SqlServerCe
Ensamblado:  System.Data.SqlServerCe (en System.Data.SqlServerCe.dll)

Sintaxis

'Declaración
<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

El tipo SqlCeLockTimeoutException expone los siguientes miembros.

Constructores

  Nombre Descripción
Método protegido SqlCeLockTimeoutException Constructor que ayuda en la serialización.

Arriba

Propiedades

  Nombre Descripción
Propiedad pública Data (se hereda de Exception)
Propiedad pública ErrorCode (se hereda de ExternalException)
Propiedad pública Errors Obtiene una colección de uno o varios objetos SqlCeError que contienen información detallada sobre las excepciones que genera el proveedor de datos de .NET Compact Framework para SQL Server Compact. (se hereda de SqlCeException)
Propiedad pública HelpLink (se hereda de Exception)
Propiedad pública HResult Obtiene el valor HRESULT de la excepción. Este valor es el mismo que el valor de HResult de la primera instancia de SqlCeError en SqlCeErrorCollection de la excepción. (se hereda de SqlCeException)
Propiedad pública InnerException (se hereda de Exception)
Propiedad pública Message Obtiene el texto que describe la primera instancia de SqlCeError en SqlCeErrorCollection de esta excepción. (se hereda de SqlCeException)
Propiedad pública NativeError Obtiene el número de error nativo del primer SqlCeError de SqlCeErrorCollection. Para obtener más información acerca del error, vea el tema sobre errores de SQL Server Compact en la sección de solución de problemas de los Libros en pantalla de SQL Server Compact. (se hereda de SqlCeException)
Propiedad pública Source Obtiene el nombre del proveedor OLE DB que ha generado el error. (se hereda de SqlCeException)
Propiedad pública StackTrace (se hereda de Exception)
Propiedad pública TargetSite (se hereda de Exception)

Arriba

Métodos

  Nombre Descripción
Método público Equals (se hereda de Object)
Método protegido Finalize (se hereda de Object)
Método público GetBaseException (se hereda de Exception)
Método público GetHashCode (se hereda de Object)
Método público GetObjectData Importante para la seguridad. Rellena un cursor SerializationInfo con los datos necesarios para serializar el objeto. (Invalida SqlCeException.GetObjectData(SerializationInfo, StreamingContext).)
Método público GetType (se hereda de Exception)
Método protegido MemberwiseClone (se hereda de Object)
Método público ToString (se hereda de Exception)

Arriba

Comentarios

Para obtener más información, vea el tema sobre bloqueo (SQL Server Compact) en los Libros en pantalla de SQL Server Compact.

Ejemplos

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

Seguridad para subprocesos

Todos los miembros estáticos públicos (Shared in Microsoft Visual Basic) de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancia sean seguros para subprocesos.

Vea también

Referencia

Espacio de nombres System.Data.SqlServerCe