Verfahrensweise: Erstellen einer Serviced Component
Das folgende Verfahren beschreibt, wie eine neue Serviced Component erstellt wird.
So erstellen Sie eine Serviced Component
Definieren Sie eine Klasse, die direkt oder indirekt von der ServicedComponent-Klasse abgeleitet wird. Der folgende Code stellt beispielsweise sicher, dass sich die
Calculator
-Klasse in einer COM+-Anwendung befindet.Imports System.EnterpriseServices Public Class Account Inherits ServicedComponent Function Add (x as Integer, y as Integer) As Integer Add = x + y End Function End Class
using System.EnterpriseServices; public class Calculator : ServicedComponent { public int Add (int x, int y) { return(x+y); } }
Wenden Sie Attribute an, um anzuzeigen, wie jede Assembly, Klasse oder Methode mit der COM+-Funktionalität interagieren soll.
Hinweis: In .NET Framework, Version 1.1, ist die COM+-Sicherheitskonfiguration in der Standardeinstellung aktiviert, wenn das ApplicationAccessControlAttribute-Attribut in der Assembly nicht vorhanden ist. Dies stellt eine Änderung gegenüber .NET Framework, Version 1.0, dar.
<Assembly: ApplicationName(“Calculator”)> <Assembly: System.Reflection.AssemblyKeyFile(“Calculator.snk”)> <MustRunInClientContext> _ Public Class Account Inherits ServicedComponent ‘ Member definitions. End Class
[assembly: ApplicationName("Calculator")] [assembly: System.Reflection.AssemblyKeyFile("Calculator.snk")] [MustRunInClientContext] public class Calculator : ServicedComponent { // Member definitions. }
Generieren Sie einen starken Schlüssel, und kompilieren Sie folgendes Beispiel:
sn –k Calculator.snk vbc /t:library /r:System.EnterpriseServices.dll Calculator.vb
sn –k Calculator.snk csc /t:library /r:System.EnterpriseServices.dll Calculator.cs
Stellen Sie die Serviced Component-Anwendung bereit, indem Sie ihre Assembly dynamisch oder manuell registrieren.
Im Anschluss an die Registrierung einer Serviced Component können Clients Instanzen dieser Komponente auf dieselbe Weise erstellen, in der sie Instanzen aller anderen Komponenten erstellen. Ein vollständiges Beispiel finden Sie unter Beispiel für Serviced Components.
Hinweis: Auf Windows 2000-Plattformen lädt COM+ immer die neuste Version der Common Language Runtime für die Komponente, die Sie gerade erstellen. Das bedeutet, dass auf einem Computer, auf dem sowohl .NET Framework, Version 1.0, als auch .NET Framework, Version 1.1, installiert sind, immer die .NET Framework-Version 1.1 geladen wird. Als Problemumgehung können Sie eine COM+-Datei dllhost.exe.configuration erstellen, mit deren Hilfe Sie bei allen Anwendungen die Verwendung einer bestimmten Version von .NET Framework "erzwingen" können. Auf Windows XP- und Windows Server 2003-Plattformen können Sie mit der Einstellung Anwendungsstammverzeichnis COM+ auf ein geeignetes Verzeichnis mit der Konfigurationsdatei verweisen.
Beispiel
Imports System.EnterpriseServices
<Assembly: ApplicationName(“Calculator”)>
<Assembly: System.Reflection.AssemblyKeyFile(“Calculator.snk”)>
<MustRunInClientContext> _
Public Class Account
Inherits ServicedComponent
Function Add (x as Integer, y as Integer) As Integer
Add = x + y
End Function
End Class
using System.EnterpriseServices;
[assembly: ApplicationName("Calculator")]
[assembly: System.Reflection.AssemblyKeyFile("Calculator.snk")]
[MustRunInClientContext]
public class Calculator : ServicedComponent
{
public int Add (int x, int y)
{
return(x+y);
}
}
Siehe auch
Referenz
Konzepte
Anwenden von Attributen zum Konfigurieren von COM+-Diensten
Registrieren von Serviced Components
Beispiel für Serviced Components
Zusammenfassung der verfügbaren COM+-Dienste
Weitere Ressourcen
Schreiben von Serviced Components
Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.