(0) exportieren Drucken
Alle erweitern

TemplateControl.OnCommitTransaction-Methode

Löst das CommitTransaction-Ereignis aus.

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

protected virtual void OnCommitTransaction (
	EventArgs e
)
protected void OnCommitTransaction (
	EventArgs e
)
protected function OnCommitTransaction (
	e : EventArgs
)

Parameter

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

Sie können die OnCommitTransaction-Methode für jede Transaktionsverarbeitungslogik verwenden, an der die betreffende Seite oder das Benutzersteuerelement beteiligt ist.

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 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

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.

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0
Anzeigen:
© 2014 Microsoft