Serviced Component

Eintrag zuletzt aktualisiert am: 15.09.2004

Auch .NET-Komponenten können Transaktionen unterstützen. Das .NET Framework enthält jedoch (noch) keinen eigenen Transaktionsmonitor, sondern greift auf die Transaktionsinfrastruktur von COM+ zurück. Auch die anderen Komponentendienste von COM+ (Object Pooling, Events, Queued Components, etc.) können verwendet werden. .NET-Komponenten, die in einer COM+-Anwendung laufen, heißen Serviced Components.

Registrierung

Die dazu notwendige Registrierung als COM+-Anwendung wird beim ersten Start durch die CLR vorgenommen (First Use Lazy Registration), wenn die Komponente durch so genannte Meta-Attribute entsprechend gekennzeichnet ist.

Voraussetzungen

Die Komponente muss einen Strong Name besitzen.

Beispiel

using System.EnterpriseServices;
using System.Runtime.CompilerServices;
using System.Reflection;

// Name der COM+-Anwendung
[assembly: ApplicationName("BankComponent")]
[assembly: AssemblyKeyFileAttribute("bankcomponent.snk")]

namespace BankComponent
{
[Transaction(TransactionOption.Required)]
public class Account : ServicedComponent
{
[AutoComplete]
public bool Post(int accountNum, double amount)
{
// ...
return true;
}
}
}