Freigeben über


ContextUtil.DeactivateOnReturn-Eigenschaft

Ruft das done-Bit im COM+-Kontext ab oder legt dieses fest.

Namespace: System.EnterpriseServices
Assembly: System.EnterpriseServices (in system.enterpriseservices.dll)

Syntax

'Declaration
Public Shared Property DeactivateOnReturn As Boolean
'Usage
Dim value As Boolean

value = ContextUtil.DeactivateOnReturn

ContextUtil.DeactivateOnReturn = value
public static bool DeactivateOnReturn { get; set; }
public:
static property bool DeactivateOnReturn {
    bool get ();
    void set (bool value);
}
/** @property */
public static boolean get_DeactivateOnReturn ()

/** @property */
public static void set_DeactivateOnReturn (boolean value)
public static function get DeactivateOnReturn () : boolean

public static function set DeactivateOnReturn (value : boolean)

Eigenschaftenwert

true, wenn das Objekt bei Rückgabe der Methode deaktiviert werden soll, andernfalls false. Der Standardwert ist false.

Ausnahmen

Ausnahmetyp Bedingung

COMException

Es ist kein COM+-Kontext verfügbar.

PlatformNotSupportedException

Die Plattform ist nicht Windows 2000 oder höher.

Hinweise

Mit dem done-Bit wird in COM+ bestimmt, wie lange das Objekt aktiv bleibt, nachdem es seine Aufgabe erfüllt hat. Hierdurch kann die Dauer einer Transaktion beeinflusst werden. Wenn ein Methodenaufruf beendet wird, wird das done-Bit von COM+ untersucht. Wenn das done-Bit true ist, deaktiviert COM+ das Objekt. Wenn das done-Bit false ist, wird das Objekt nicht deaktiviert.

Beispiel

Im folgenden Codebeispiel wird veranschaulicht, wie die DeactivateOnReturn-Eigenschaft verwendet wird, um sicherzustellen, dass eine ServicedComponent nach einem Methodenaufruf deaktiviert wird.

<Transaction()>  _
Public Class TransactionalComponent
    Inherits ServicedComponent
    
    
    Public Sub TransactionalMethod(ByVal data As String) 
        
        ContextUtil.DeactivateOnReturn = True
        ContextUtil.MyTransactionVote = TransactionVote.Abort
        
        ' Do work with data. Return if any errors occur.
        ' Vote to commit. If any errors occur, this code will not execute.
        ContextUtil.MyTransactionVote = TransactionVote.Commit
    
    End Sub 'TransactionalMethod 
End Class 'TransactionalComponent
[Transaction]
public class TransactionalComponent : ServicedComponent
{

    public void TransactionalMethod (string data)
    {

      ContextUtil.DeactivateOnReturn = true;
      ContextUtil.MyTransactionVote = TransactionVote.Abort;

      // Do work with data. Return if any errors occur.

      // Vote to commit. If any errors occur, this code will not execute.
      ContextUtil.MyTransactionVote = TransactionVote.Commit;

    }

}
[assembly:System::Reflection::AssemblyKeyFile("Transaction.snk")];
[Transaction]
public ref class TransactionalComponent: public ServicedComponent
{
public:
   void TransactionalMethod( String^ data )
   {
      ContextUtil::DeactivateOnReturn = true;
      ContextUtil::MyTransactionVote = TransactionVote::Abort;
      
      // do work with data
      ContextUtil::MyTransactionVote = TransactionVote::Commit;
   }

};
/** @attribute Transaction()
 */
public class TransactionalComponent extends ServicedComponent
{
    public void TransactionalMethod(String data)
    {
        ContextUtil.set_DeactivateOnReturn(true);
        ContextUtil.set_MyTransactionVote(TransactionVote.Abort);

        // Do work with data. Return if any errors occur.
        // Vote to commit. If any errors occur, this code will not execute.
        ContextUtil.set_MyTransactionVote(TransactionVote.Commit);
    } //TransactionalMethod 
} //TransactionalComponent

.NET Framework-Sicherheit

  • Volle Vertrauenswürdigkeit für den unmittelbaren Aufrufer. Dieser Member kann von nur teilweise vertrauenswürdigem Code nicht verwendet werden. Weitere Informationen finden Sie unter .

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

ContextUtil-Klasse
ContextUtil-Member
System.EnterpriseServices-Namespace