次の方法で共有


TemplateControl.OnCommitTransaction メソッド

CommitTransaction イベントを発生させます。

Protected Overridable Sub OnCommitTransaction( _
   ByVal e As EventArgs _)
[C#]
protected virtual void OnCommitTransaction(EventArgse);
[C++]
protected: virtual void OnCommitTransaction(EventArgs* e);
[JScript]
protected function OnCommitTransaction(
   e : EventArgs);

パラメータ

  • e
    イベント データを格納している EventArgs オブジェクト。

解説

このメソッドは、ページまたはユーザー コントロールが参加するどのトランザクション処理ロジックにも使用できます。

使用例

[Visual Basic, C#] OnAbortTransaction メソッドと OnCommitTransaction メソッドの例を次に示します。 TemplateControl は抽象クラスであるため、この例では、この抽象クラスから派生する Page クラスを使用します。 AccountDebit 操作をサポートするクラスです。この操作はトランザクション操作であり、1 つの単位として実行する必要があります。この操作中に例外が発生すると、トランザクションは中止します。

 

   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


[C#] 

   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");
      }

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

プラットフォーム: Windows 2000, Windows XP Professional, Windows Server 2003 ファミリ

参照

TemplateControl クラス | TemplateControl メンバ | System.Web.UI 名前空間 | トランザクション処理