Este artículo se tradujo automáticamente. Para ver el artículo en inglés, active la casilla Inglés. Además, puede mostrar el texto en inglés en una ventana emergente si mueve el puntero del mouse sobre el texto.
Traducción
Inglés

Clase Enlistment

 

Facilita la comunicación entre un participante de la transacción inscrito y el Administrador de transacciones durante la fase final de la transacción.

Espacio de nombres:   System.Transactions
Ensamblado:  System.Transactions (en System.Transactions.dll)


public class Enlistment

NombreDescripción
System_CAPS_pubmethodDone()

Indica que el participante de la transacción ha completado su trabajo.

System_CAPS_pubmethodEquals(Object)

Determina si el objeto especificado es igual al objeto actual.(Heredado de Object).

System_CAPS_protmethodFinalize()

Permite que un objeto intente liberar recursos y realizar otras operaciones de limpieza antes de ser reclamado por el recolector de basura. (Heredado de Object).

System_CAPS_pubmethodGetHashCode()

Sirve como la función hash predeterminada.(Heredado de Object).

System_CAPS_pubmethodGetType()

Obtiene el Type de la instancia actual.(Heredado de Object).

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficial del Object actual.(Heredado de Object).

System_CAPS_pubmethodToString()

Devuelve una cadena que representa al objeto actual. (Heredado de Object).

Cuando el EnlistVolatile y EnlistDurable métodos de la Transaction objeto se invocan para inscribir un participante en una transacción, devuelven este objeto que describe la inscripción.

Durante la fase final de la confirmación de la transacción, el Administrador de transacciones pasa este objeto a un administrador de recursos que implementa el IEnlistmentNotification interfaz que ha dado de alta en una transacción. En concreto, el Administrador de transacciones llama a la Commit o la Rollback método del participante, en función de si éste ha decidido confirmar o revertir la transacción. El participante llamará el Done método de este objeto para informar al administrador de transacciones que se ha completado su trabajo.

Una inscripción puede llamar el Done en cualquier momento antes el método se denomina Prepared en la fase de preparación. Al hacerlo, la inscripción produce un voto de sólo lectura, lo que significa que aprueba la confirmación de la transacción pero no necesita recibir el resultado final. Tenga en cuenta que, después de la Done se llama al método, el participante inscrito no recibe ninguna notificación más del Administrador de transacciones.

En el ejemplo siguiente se muestra una implementación de la IEnlistmentNotification interfaz y cuando el Done debe llamar al método.

class myEnlistmentClass : IEnlistmentNotification
{
	public void Prepare(PreparingEnlistment preparingEnlistment)
	{
		Console.WriteLine("Prepare notification received");

		//Perform transactional work

		//If work finished correctly, reply prepared
		preparingEnlistment.Prepared();

		// otherwise, do a ForceRollback
		preparingEnlistment.ForceRollback();
	}

	public void Commit(Enlistment enlistment)
	{
		Console.WriteLine("Commit notification received");

		//Do any work necessary when commit notification is received

		//Declare done on the enlistment
		enlistment.Done();
	}

	public void Rollback(Enlistment enlistment)
	{
		Console.WriteLine("Rollback notification received");

		//Do any work necessary when rollback notification is received

		//Declare done on the enlistment
		enlistment.Done();
	}

	public void InDoubt(Enlistment enlistment)
	{
		Console.WriteLine("In doubt notification received");

		//Do any work necessary when indout notification is received

		//Declare done on the enlistment
		enlistment.Done();
	}
}

.NET Framework
Disponible desde 2.0

Este tipo es seguro para la ejecución de subprocesos.

Volver al principio
Mostrar: