Freigeben über


TemplateControl.AbortTransaction-Ereignis

Tritt ein, wenn ein Benutzer eine Transaktion beendet.

Namespace: System.Web.UI
Assembly: System.Web (in system.web.dll)

Syntax

'Declaration
Public Event AbortTransaction As EventHandler
'Usage
Dim instance As TemplateControl
Dim handler As EventHandler

AddHandler instance.AbortTransaction, handler
public event EventHandler AbortTransaction
public:
event EventHandler^ AbortTransaction {
    void add (EventHandler^ value);
    void remove (EventHandler^ value);
}
/** @event */
public void add_AbortTransaction (EventHandler value)

/** @event */
public void remove_AbortTransaction (EventHandler value)
JScript unterstützt die Verwendung von Ereignissen, aber nicht die Deklaration von neuen Ereignissen.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie für das AbortTransaction-Ereignis ein benutzerdefinierter Ereignishandler registriert wird. Da TemplateControl eine abstrakte Klasse ist, wird in diesem Codebeispiel die Page-Klasse verwendet, die von der TemplateControl-Klasse abgeleitet ist. Account ist eine Klasse, die eine Debit-Operation unterstützt, die transaktional ist und als Einheit ausgeführt werden muss. Wenn während dieser Operation eine Ausnahme ausgelöst wird, wird die Transaktion beendet.

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

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

         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
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");
   }
void Page_Load(Object sender, System.EventArgs e)
{
    this.add_AbortTransaction(
        new System.EventHandler(Sub_AbortTransaction));
    this.add_CommitTransaction(
        new System.EventHandler(Sub_CommitTransaction));
    try {
        Account myAccount = new Account();
        int someAmount = 500;
        myAccount.Debit(someAmount);
        ContextUtil.SetComplete();
    }
    catch (System.Exception exp) {

        ContextUtil.SetAbort();
    }
} //Page_Load

private void Sub_AbortTransaction(Object sender, System.EventArgs e)
{
    // Code for RollBack activity goes here.
    get_Response().Write("Transaction Aborted");
} //Sub_AbortTransaction

private void Sub_CommitTransaction(Object sender, System.EventArgs e)
{
    // Code for Commit Activity goes here.
    get_Response().Write("Transaction Commited");
} //Sub_CommitTransaction

Plattformen

Windows 98, Windows 2000 SP4, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

TemplateControl-Klasse
TemplateControl-Member
System.Web.UI-Namespace
CommitTransaction
Error
OnAbortTransaction

Weitere Ressourcen

Transaktionsverarbeitung