IEnlistmentNotification.Prepare(PreparingEnlistment) Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Notifica a un objeto inscrito que se prepara una transacción para la confirmación.
public:
void Prepare(System::Transactions::PreparingEnlistment ^ preparingEnlistment);
public void Prepare (System.Transactions.PreparingEnlistment preparingEnlistment);
abstract member Prepare : System.Transactions.PreparingEnlistment -> unit
Public Sub Prepare (preparingEnlistment As PreparingEnlistment)
Parámetros
- preparingEnlistment
- PreparingEnlistment
Objeto PreparingEnlistment utilizado para enviar una respuesta al administrador de transacciones.
Comentarios
El administrador de transacciones llama a este método de un administrador de recursos inscrito durante la fase 1 de un compromiso, cuando pregunta a los participantes si pueden confirmar la transacción.
Al implementar un administrador de recursos duradero, debe registrar el registro de preparación durante esta fase. El registro debe contener toda la información necesaria para realizar la recuperación. Esto incluye la RecoveryInformation propiedad , que se pasa al administrador de transacciones en el método durante la Reenlist recuperación. Para obtener más información sobre recuperación, vea Realización de la recuperación.
El administrador de recursos debe completar todo el trabajo que debe finalizar antes de llamar al Prepared método del preparingEnlistment
parámetro para indicar su voto por compromiso. Debe asegurarse de que esto se logra antes de recibir cualquier notificación de fase 2, como confirmación, reversión o duda. Esto se debe a que las notificaciones de fase 2 pueden producirse insertadas en el mismo subproceso que llamó al método en la Prepared fase 1. Como tal, no debería realizar ningún trabajo después de la llamada a Prepared (por ejemplo, liberando bloqueos) que debería esperar que se habrían completado antes de recibir las notificaciones de la fase 2.
También puede llamar al método del preparingEnlistment
parámetro para indicar un voto de reversión.
Si desea que el objeto simplemente observe y reaccione al progreso de la transacción, sin participar en ella, la implementación de este método debe llamar al Done método del preparingEnlistment
parámetro cuando haya terminado su trabajo. Al hacerlo, el administrador de recursos no recibiría ninguna notificación de fase 2.