TransactionAttribute-Klasse
Gibt den Typ der Transaktion an, der für das attributierte Objekt verfügbar ist. Als Werte sind Member der TransactionOption-Enumeration zulässig.
Namespace: System.EnterpriseServices
Assembly: System.EnterpriseServices (in system.enterpriseservices.dll)
Syntax
'Declaration
<ComVisibleAttribute(False)> _
<AttributeUsageAttribute(AttributeTargets.Class, Inherited:=True)> _
Public NotInheritable Class TransactionAttribute
Inherits Attribute
'Usage
Dim instance As TransactionAttribute
[ComVisibleAttribute(false)]
[AttributeUsageAttribute(AttributeTargets.Class, Inherited=true)]
public sealed class TransactionAttribute : Attribute
[ComVisibleAttribute(false)]
[AttributeUsageAttribute(AttributeTargets::Class, Inherited=true)]
public ref class TransactionAttribute sealed : public Attribute
/** @attribute ComVisibleAttribute(false) */
/** @attribute AttributeUsageAttribute(AttributeTargets.Class, Inherited=true) */
public final class TransactionAttribute extends Attribute
ComVisibleAttribute(false)
AttributeUsageAttribute(AttributeTargets.Class, Inherited=true)
public final class TransactionAttribute extends Attribute
Hinweise
Wenn mit diesem Attribut ein Transaktionstyp angegeben wird, darf es im COM+-Katalog nicht geändert werden. Wenn der Transaktionstyp im COM+-Katalog geändert wird, muss mithilfe dieses Attributs derselbe Transaktionstyp in der Komponente angegeben werden.
Weitere Informationen über das Verwenden von Attributen finden Sie unter Erweitern von Metadaten mithilfe von Attributen.
Beispiel
Im folgenden Codebeispiel wird veranschaulicht, wie TransactionAttribute verwendet wird, um eine ServicedComponent als transaktional zu kennzeichnen.
<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
Vererbungshierarchie
System.Object
System.Attribute
System.EnterpriseServices.TransactionAttribute
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
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
TransactionAttribute-Member
System.EnterpriseServices-Namespace