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