Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das folgende Beispiel und Verfahren beschreibt das Konfigurieren der Objektkonstruktion und das Festlegen der Standard-Initialisierungszeichenfolge der TestObjectConstruct-Klasse auf die Zeichenfolge "Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes". Diese Zeichenfolge wird für den Verbindungsaufbau mit einer SQL Server-Datenbank verwendet. Das Thema Objektkonstruktion erläutert darüber hinaus die Verwendung der COM+-Objektkonstruktion aus der ServicedComponent-Klasse.
So konfigurieren Sie die Objektkonstruktion und legen die Standard-Initialisierungszeichenfolge für eine Klasse fest
Definieren Sie eine Klasse, die direkt oder indirekt von der System.EnterpriseServices.ServicedComponent-Klasse abgeleitet wird. Der folgende Code zeigt beispielsweise eine Klasse
TestObjectConstruct, die direkt von der System.EnterpriseServices.ServicedComponent-Klasse abgeleitet wird.Imports System.EnterpriseServices Imports System Imports System.Data Imports System.Data.SqlClient … Public Class TestObjectConstruct Inherits ServicedComponent … End Classusing System; using System.EnterpriseServices; using System.Data; using System.Data.SqlClient; … public class TestObjectConstruct : ServicedComponent { … }Wenden Sie das ConstructionEnabledAttribute-Attribut auf eine Klasse an, und legen Sie die Default-Eigenschaft des Attributs fest. Im folgenden Code wird beispielsweise das ConstructionEnabledAttribute-Attribut auf die
TestObjectConstruct-Klasse angewendet und die Default-Eigenschaft auf die SQL Server-Verbindungszeichenfolge festgelegt.<ConstructionEnabled([Default] := "Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes")> _ Public Class TestObjectConstruct … End Class[ConstructionEnabled(Default="Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes")] public class TestObjectConstruct : ServicedComponent { … }Setzen Sie die Construct-Methode außer Kraft.
<ConstructionEnabled([Default] := "Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes")> _ Public Class TestObjectConstruct Inherits ServicedComponent Private m_connectStr As String Private conn as SqlConnection Protected Overrides Sub Construct(constructString As String) ' Called after constructor. m_connectStr = constructString End Sub Public Sub ConnectToDatabase() conn = New SqlConnection(m_connectStr) End Sub End Class[C#] [ConstructionEnabled(Default="Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes")] public class TestObjectConstruct : ServicedComponent { private string connectStr; SqlConnection conn; public TestObjectConstruct() { … } protected override void Construct(string constructString) { // Called after constructor. connectStr = constructString; } public void ConnectToDatabase() { conn = new SqlConnection(connectStr); conn.Open(); } }Erstellen Sie in der Clientanwendung eine Instanz der Komponentenklasse, ohne eine Konstruktionszeichenfolge anzugeben, damit der Standardwert verwendet wird. Im folgenden Code wird beispielsweise eine Instanz der
TestObjectConstruct-Klasse erstellt und der Standardwert der Konstruktionszeichenfolge,"Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes", verwendet.Public Class App Overloads Public Shared Sub Main() Dim order As New TestObjectConstruct() order.ConnectToDatabase() End Sub End Classpublic class App { public static void Main() { TestObjectConstruct order = new TestObjectConstruct(); order. ConnectToDatabase(); } }
Nachdem die Komponentendiensteanwendung installiert wurde, können Sie Konstruktionszeichenfolgen mithilfe des Komponentendienste-Verwaltungstools angeben. Führen Sie folgende Schritte aus, um eine Objekt-Konstruktionszeichenfolge für eine Komponente einzugeben:
Öffnen Sie das Komponentendienste-Verwaltungstool.
Klicken Sie im Komponentendienste-Verwaltungstool mit der rechten Maustaste auf die zu konfigurierende Komponente, und klicken Sie dann auf Eigenschaften.
Wenn das ConstructionEnabled-Attribut nicht auf True festgelegt ist, aktivieren Sie im Dialogfeld Eigenschaften auf der Registerkarte Aktivierung das Kontrollkästchen Objektkonstruktion aktivieren, um die Verwendung der Objekt-Konstruktionszeichenfolge zu aktivieren.
Wenn Sie die mit dem ConstructionEnabled-Attribut angegebene Standard-Konstruktionszeichenfolge ändern möchten, geben Sie die Konstruktionszeichenfolge in das Feld Konstruktorzeichenfolge ein.
Beispiel
Imports System.EnterpriseServices
Imports System
Imports System.Data
Imports System.Data.SqlClient
<assembly: ApplicationName("OCDemo")>
Namespace OCDemo
<ConstructionEnabled([Default] := "Initial Catalog=Northwind;
Data Source=.\\SQLServerInstance;Trusted_Connection=yes")> _
Public Class TestObjectConstruct
Inherits ServicedComponent
Private m_connectStr As String
Private conn as SqlConnection
Protected Overrides Sub Construct(constructString As String)
' Called after constructor.
m_connectStr = constructString
End Sub
Public Sub ConnectToDatabase()
conn = New SqlConnection(m_connectStr)
End Sub
End Class
End Namespace
using System;
using System.EnterpriseServices;
using System.Data;
using System.Data.SqlClient;
[assembly : ApplicationName("OCDemo")]
namespace OCDemo
{
[ConstructionEnabled(Default="Initial Catalog=Northwind;
Data Source=.\\SQLServerInstance;Trusted_Connection=yes")]
public class TestObjectConstruct : ServicedComponent
{
private string connectStr;
SqlConnection conn;
public TestObjectConstruct()
{
…
}
protected override void Construct(string constructString)
{
// Called after constructor.
connectStr = constructString;
}
public void ConnectToDatabase()
{
conn = new SqlConnection(connectStr);
conn.Open();
}
}
}
Siehe auch
Referenz
ConstructionEnabledAttribute
System.EnterpriseServices
Konzepte
Objektkonstruktion
Zusammenfassung der verfügbaren COM+-Dienste
.gif)
Copyright © 2007 by Microsoft Corporation. Alle Rechte vorbehalten.