ContextUtil.DeactivateOnReturn Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient ou définit le bit done
dans le contexte COM+.
public:
static property bool DeactivateOnReturn { bool get(); void set(bool value); };
public static bool DeactivateOnReturn { get; set; }
static member DeactivateOnReturn : bool with get, set
Public Shared Property DeactivateOnReturn As Boolean
Valeur de propriété
true
si l'objet doit être désactivé au retour de la méthode ; sinon false
. La valeur par défaut est false
.
Exceptions
Aucun contexte COM+ disponible.
Exemples
L’exemple de code suivant illustre l’utilisation de la DeactivateOnReturn propriété pour s’assurer qu’un ServicedComponent est désactivé après un appel de méthode.
[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;
}
};
[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;
}
}
<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
End Class
Remarques
Le bit COM+ done
détermine la durée pendant laquelle l’objet reste actif une fois son travail terminé et peut affecter la durée d’une transaction. Lorsqu’un appel de méthode est retourné, COM+ inspecte le done
bit. Si le done
bit est true
, COM+ désactive l’objet. Si le done
bit est false
, l’objet n’est pas désactivé.