Procedura: configurare la costruzione di oggetti
Nella procedura e nell'esempio seguenti viene illustrato come configurare la costruzione di oggetti e impostare la stringa di inizializzazione predefinita della classe TestObjectConstruct
sulla stringa "Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes"
. Questa stringa consente di eseguire la connessione a un database SQL Server. Nell'argomento Costruzione di oggetti viene illustrato l'utilizzo della costruzione di oggetti COM+ dalla classe ServicedComponent.
Per configurare la costruzione di oggetti e impostare la stringa di inizializzazione predefinita per una classe
Definire una classe che deriva direttamente o indirettamente dalla classe System.EnterpriseServices.ServicedComponent. Nel codice seguente, ad esempio, viene illustrata una classe
TestObjectConstruct
che deriva direttamente dalla classe System.EnterpriseServices.ServicedComponent.Imports System.EnterpriseServices Imports System Imports System.Data Imports System.Data.SqlClient … Public Class TestObjectConstruct Inherits ServicedComponent … End Class
using System; using System.EnterpriseServices; using System.Data; using System.Data.SqlClient; … public class TestObjectConstruct : ServicedComponent { … }
Applicare l'attributo ConstructionEnabledAttribute alla classe e impostare la proprietà Default dell'attributo. Nel codice seguente, ad esempio, viene applicato l'attributo ConstructionEnabledAttribute alla classe
TestObjectConstruct
e la proprietà Default viene impostata sulla stringa di connessione a SQL Server.<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 { … }
Eseguire l'override del metodo Construct.
<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(); } }
Nell'applicazione client, creare un'istanza della classe Component senza specificare una stringa di costruzione, in modo che venga utilizzata la stringa predefinita. Nel codice seguente, ad esempio, viene creata un'istanza della classe
TestObjectConstruct
e impostata"Initial Catalog=Northwind;Data Source=.\\SQLServerInstance;Trusted_Connection=yes"
come stringa di costruzione predefinita.Public Class App Overloads Public Shared Sub Main() Dim order As New TestObjectConstruct() order.ConnectToDatabase() End Sub End Class
public class App { public static void Main() { TestObjectConstruct order = new TestObjectConstruct(); order. ConnectToDatabase(); } }
Dopo aver installato l'applicazione dei servizi componenti, è possibile specificare le stringhe di costruzione utilizzando lo strumento di amministrazione Servizi componenti. Per specificare una stringa di costruzione di oggetti per un componente, effettuare la procedura seguente:
Aprire lo strumento di amministrazione Servizi componenti.
Nello strumento di amministrazione Servizi componenti, fare clic con il pulsante destro del mouse sul componente che si desidera configurare e quindi fare clic su Proprietà.
Se l'attributo ConstructionEnabled è stato impostato su True, nella scheda Attivazione della finestra di dialogo Proprietà, selezionare la casella di controllo Abilita costruzione di oggetti per abilitare l'utilizzo della stringa di costruzione di oggetti.
Se si desidera modificare la stringa di costruzione predefinita specificata con l'attributo ConstructionEnabled, digitare la stringa di costruzione nella casella Stringa costruttore.
Esempio
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();
}
}
}
Vedere anche
Riferimenti
ConstructionEnabledAttribute
System.EnterpriseServices
Concetti
Costruzione di oggetti
Riepilogo dei servizi COM+ disponibili
Copyright © 2007 Microsoft Corporation. Tutti i diritti riservati.