Condividi tramite


TemplateControl.OnCommitTransaction(EventArgs) Metodo

Definizione

Genera l'evento CommitTransaction.

protected:
 virtual void OnCommitTransaction(EventArgs ^ e);
protected virtual void OnCommitTransaction (EventArgs e);
abstract member OnCommitTransaction : EventArgs -> unit
override this.OnCommitTransaction : EventArgs -> unit
Protected Overridable Sub OnCommitTransaction (e As EventArgs)

Parametri

e
EventArgs

Oggetto EventArgs che contiene i dati dell'evento.

Esempio

Nell'esempio di codice seguente viene illustrato come usare i OnAbortTransaction metodi e OnCommitTransaction . Poiché TemplateControl è una classe astratta, questo esempio di codice usa la Page classe, derivata dalla TemplateControl classe . Account è una classe che supporta un'operazione Debit , che è transazionale e deve essere eseguita come unità. Se durante questa operazione viene generata un'eccezione, la transazione viene terminata.


  private void Page_Load(object sender, System.EventArgs e)
  {
      AbortTransaction += new System.EventHandler(Sub_AbortTransaction);
   CommitTransaction += new System.EventHandler(Sub_CommitTransaction);
      try
   {
      Account myAccount = new Account();
      int someAmount = 500;
      myAccount.Debit(someAmount); 
      ContextUtil.SetComplete(); 
   }
   catch(Exception)
   {
      ContextUtil.SetAbort();
   }
  }

private void Sub_AbortTransaction(object sender,System.EventArgs e)
{
   // Code for RollBack activity goes here.
   Response.Write("Transaction Aborted");
}
private void Sub_CommitTransaction(object sender,System.EventArgs e)
{
   // Code for Commit Activity goes here.
   Response.Write("Transaction Commited");
}

   private Sub Page_Load(Sender As Object, e As EventArgs)

   AddHandler Me.myCommitTransaction,AddressOf Sub_CommitTransaction
   AddHandler Me.myAbortTransaction,AddressOf Sub_AbortTransaction

      try
   
      Dim myAccount As Account = New Account()
      Dim someAmount As Integer = 500
      myAccount.Debit(someAmount)
      ContextUtil.SetComplete()
   
   catch e1 As Exception
         ContextUtil.SetAbort()
   End Try
  End Sub

Public event myCommitTransaction As System.EventHandler 
 Public event myAbortTransaction As System.EventHandler
 
 protected overrides Sub  OnCommitTransaction(e As EventArgs )
  
       RaiseEvent myCommitTransaction(Me ,e)
       Response.Write("<br /><br />The 'OnCommitTransaction()' method is used to raise the 'CommitTransaction' event." )

End Sub
  
  protected  overrides Sub OnAbortTransaction(e As EventArgs)
       RaiseEvent myAbortTransaction(Me ,e)
       Response.Write("<br /><br />The 'OnAbortTransaction()' method is used to raise the 'AbortTransaction' event." )
  End Sub

private Sub Sub_AbortTransaction(Sender As Object, e As EventArgs)
  ' Code for RollBack activity goes here.
   Response.Write("Transaction Aborted")
End Sub

private Sub Sub_CommitTransaction(Sender As Object, e As EventArgs)
  ' Code for Commit Activity goes here.
   Response.Write("Transaction Commited")
End Sub

Commenti

È possibile usare il metodo per qualsiasi logica di elaborazione delle transazioni in cui partecipa la pagina o il OnCommitTransaction controllo utente.

Si applica a

Vedi anche