<comContract>
Especifica un contrato de servicio de integración de COM+.
<configuration>
<system.serviceModel>
<comContracts>
<comContract>
Sintaxis
<comContracts>
<comContract contract="String"
namespace="String"
name="String"
requireSession="Boolean">
<exposedMethods>
<exposedMethod name="String" />
</exposedMethods>
<userDefinedTypes>
<userDefinedType name="String"
typeLibID="String"
typeLibVersion="String"
typeDefID="String">
</userDefinedType>
</userDefinedTypes>
<persistableTypes>
<persistableType id="String"
name="String">
</persistableType>
</persistableTypes>
</comContract>
</comContracts>
Atributos y elementos
En las siguientes secciones se describen los atributos, los elementos secundarios y los elementos primarios.
Atributos
Atributo | Descripción |
---|---|
contrato | Una cadena que contiene el tipo de contrato. |
name | Una cadena que contiene el nombre del contrato. |
espacio de nombres | Una cadena que contiene el espacio de nombres del contrato. |
requiresSession | Un valor booleano que especifica si el contrato sólo se puede utilizar en enlaces con canal. Cuando se inicializa el servicio, el tiempo de ejecución de integración garantiza que este valor es coherente con el tipo de enlace que se va a usar. Se genera una excepción si uno o más de los enlaces para el contrato están en conflicto. Si esta propiedad es false , y un canal unidireccional está en uso y hay parámetros [fuera], también se genera una excepción. |
Elementos secundarios
Elemento | Descripción |
---|---|
persistableTypes | Todos los tipos con persistencia. |
userDefinedTypes | Una colección de tipos definidos por el usuario (UDT) que se va a incluir en el contrato del servicio. |
exposedMethods | Una colección de métodos COM+ que se exponen cuando la interfaz en un componente de COM+ se expone como un servicio Web. |
Elementos primarios
Elemento | Descripción |
---|---|
comContracts | Contiene una colección de elementos comContract . |
Comentarios
Los contratos de servicio de integración de COM+ están restringidos actualmente al espacio de nombres http://tempuri.org
y el nombre del contrato se deriva de la interfaz COM de apoyo. Puede, sin embargo, especificar las alternativas utilizando la sección comContracts
, así como el elemento comContract
en el archivo de configuración. Por ejemplo, puede utilizar la configuración siguiente para especificar el espacio de nombres, el nombre del contrato y los tipos definidos por el usuario que se van incluir, así como otros valores para un contrato de servicios.
<comContracts>
<comContract contract="{5163B1E7-F0CF-4B6A-9A02-4AB654F34284}"
namespace="http://tempuri.org/5163B1E7-F0CF-4B6A-9A02-4AB654F34284"
name="_Broker"
requireSession="true">
<exposedMethods>
<exposedMethod name="BuyStock" />
<exposedMethod name="SellStock" />
<exposedMethod name="ExecuteTransaction" />
</exposedMethods>
</comContract>
</comContracts>
Cuando se inicializa el servicio, los espacios de nombres y nombres del contrato especificados se aplican a las descripciones de servicio generadas.