Freigeben über


TemplateControl.OnAbortTransaction-Methode

Löst das AbortTransaction-Ereignis aus.

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

Syntax

'Declaration
Protected Overridable Sub OnAbortTransaction ( _
    e As EventArgs _
)
'Usage
Dim e As EventArgs

Me.OnAbortTransaction(e)
protected virtual void OnAbortTransaction (
    EventArgs e
)
protected:
virtual void OnAbortTransaction (
    EventArgs^ e
)
protected void OnAbortTransaction (
    EventArgs e
)
protected function OnAbortTransaction (
    e : EventArgs
)

Parameter

  • e
    Eine Instanz der EventArgs-Klasse, die die Ereignisdaten enthält.

Beispiel

Im folgenden Codebeispiel wird die Verwendung der OnAbortTransaction-Methode und der OnCommitTransaction-Methode veranschaulicht. 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

Weitere Ressourcen

Transaktionsverarbeitung