Aplicar atributos para configurar servicios COM+
En este tema se proporciona el valor predeterminado de cada atributo del tiempo de diseño del espacio de nombres System.EnterpriseServices. Si conoce el valor predeterminado de cada atributo, puede eliminar atributos innecesarios en el código. Si no está familiarizado con la función de los atributos en metadatos, vea Extender metadatos mediante atributos.
La que sigue es la información de uso predeterminada de cada atributo relacionado con el servicio:
Ámbito de atributo. Identifica si el atributo se aplica sólo a un método, clase o a todo un ensamblado.
Valor predeterminado sin configurar. Muestra el valor que COM+ asigna al campo cuando se omite el atributo en el código. Por ejemplo, si omite el atributo JustInTimeActivationAttribute de una clase, COM+ establece el valor predeterminado en False.
Valor predeterminado configurado. Muestra el valor que COM+ asigna a un campo cuando se aplica un atributo pero se omite su valor. En el siguiente ejemplo se muestra cómo se establece el atributo JustInTimeActivationAttribute en True en una clase:
Imports System.EnterpriseServices <JustInTimeActivation()> Public Class Account Inherits ServicedComponent Shared Sub Main() End Sub End Class [C#] using System.EnterpriseServices; [JustInTimeActivation] public class Account : ServicedComponent { static void Main() {} }
Makefile.bat
El ejemplo se puede compilar así:
vbc /t:exe /r:System.EnterpriseServices.dll Demo.vb [C#] csc /t:exe /r:System.EnterpriseServices.dll Demo.cs
Atributos relacionados con el servicio
En la tabla siguiente se enumeran el ámbito y los valores predeterminados, configurados y sin configurar, de los atributos relacionados con el servicio.
Atributo | Ámbito de atributo | Valor predeterminado sin configurar | Valor predeterminado configurado |
---|---|---|---|
ApplicationAccessControlAttribute | Ensamblado | True | True |
ApplicationActivationAttribute | Ensamblado | Biblioteca | No tiene valor predeterminado |
ApplicationIDAttribute | Ensamblado | GUID generado | No tiene valor predeterminado |
ApplicationNameAttribute | Ensamblado | Nombre del ensamblado | No tiene valor predeterminado |
ApplicationQueuingAttribute | Ensamblado | No tiene valor predeterminado | No tiene valor predeterminado |
AutoCompleteAttribute | Método | False | True |
ComponentAccessControlAttribute | Clase | False | True |
COMTIIntrinsicsAttribute | Clase | False | True |
ConstructionEnabledAttribute | Clase | False | True |
DescriptionAttribute | Ensamblado
Clase Método Interfaz |
No tiene valor predeterminado | No tiene valor predeterminado |
EventClassAttribute | Clase | No tiene valor predeterminado | FireInParallel = False
AllowInprocSubsribers = True PublisherFilter = Null |
EventTrackingEnabledAttribute | Clase | False | True |
ExceptionClassAttribute | Clase | No tiene valor predeterminado | No tiene valor predeterminado |
IISIntrinsicsAttribute | Clase | False | True |
InterfaceQueuingAttribute | Clase
Interfaz |
False | True |
JustInTimeActivationAttribute | Clase | False | True |
LoadBalancingSupportedAttribute | Clase | False | True |
MustRunInClientContextAttribute | Clase | False | True |
ObjectPoolingAttribute | Clase | False | True |
PrivateComponentAttribute | Clase | No tiene valor predeterminado | Private |
SecureMethodAttribute | Ensamblado
Clase Método |
No tiene valor predeterminado | No tiene valor predeterminado |
SecurityRoleAttribute | Ensamblado
Clase Interfaz |
No tiene valor predeterminado | No tiene valor predeterminado |
SynchronizationAttribute | Clase | False | SynchronizationOption.Required |
TransactionAttribute | Clase | False | TransactionOption.Required
TransactionIsolationLevel.Serializable Timeout = infinite |
Vea también
Escribir componentes con servicio | System.EnterpriseServices | Información general sobre componentes con servicio Registrar componentes con servicio Ejemplo de componente con servicio | Resumen de servicios COM+ disponibles | Extender metadatos mediante atributos | System.EnterpriseServices (Espacio de nombres)