Partager via


Service de construction d'objets

Le service de construction d'objets COM+ vous permet de spécifier des informations d'initialisation de façon externe, ce qui rend inutiles les informations de configuration en code irréversible au sein d'une classe. Associés au pool d'objets, les constructeurs d'objets offrent les fonctionnalités d'un distributeur de ressources, tout en vous évitant l'effort requis pour implémenter un distributeur de ressources complet.

Vous pouvez configurer le service de construction d'objets en appliquant l'attribut ConstructionEnabledAttribute à une classe dérivée de la classe System.EnterpriseServices.ServicedComponent.

L'exemple suivant affecte la chaîne « Hello world » comme valeur à la propriété par défaut de la classe TestObjectConstruct.

Serveur

Imports System.EnterpriseServices
Imports System
<assembly: ApplicationName("OCDemo")>

Namespace OCDemo 
<ConstructionEnabled([Default] := "Hello world")> _
      Public Class TestObjectConstruct 
      Inherits ServicedComponent
            Public Sub New()
                  ' First method to be called.
            End Sub 

            Public Overrides Sub Construct(constructString As String)
                  ' Called after constructor.
            End Sub 

            Public Sub DoWork()
            End Sub 
      End Class 
End Namespace 
[C#]
using System;
using System.EnterpriseServices;
[assembly : ApplicationName("OCDemo")]

namespace OCDemo
{
      [ConstructionEnabled(Default="Hello world")]
      public class TestObjectConstruct : ServicedComponent
      {
            public TestObjectConstruct()
            {
                  // First method to be called.
            }
            public override void Construct(string constructString)
            {
                  // Called after constructor.
            }
            public void DoWork () {}
      }
}

Client

Public Class App
      Overloads Public Shared Sub Main()
            Dim order As New TestObjectConstruct()
            order.DoWork()
      End Sub
End Class
[C#]
public class App
{
      public static int Main()
      {
            TestObjectConstruct order = new TestObjectConstruct();
            order.DoWork();
      }
}

Voir aussi

Résumé des services COM+ disponibles | ConstructionEnabledAttribute | System.EnterpriseServices, espace de noms