Partager via


<comContract>

Spécifie un contrat de service d'intégration COM+.

<configuration>
  <system.serviceModel>
    <comContracts>
      <comContract>

Syntaxe

<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>

Attributs et éléments

Les sections suivantes décrivent des attributs, des éléments enfants et des éléments parents.

Attributs

Attribut Description
contract Chaîne qui contient le type de contrat.
name Chaîne qui contient le type de nom.
espace de noms Chaîne qui contient l'espace de noms du contrat.
requiresSession Valeur booléenne qui spécifie si le contrat ne peut être utilisé que sur des liaisons de session. Lorsque le service est initialisé, l’exécution d’intégration garantit que ce paramètre est cohérent avec le type de liaison à utiliser. Une exception est générée en cas de conflit avec une ou plusieurs liaisons du contrat. Si cette propriété a la valeur false, qu'un canal unidirectionnel est utilisé et qu'un paramètre [out] est présent, une exception est également levée.

Éléments enfants

Élément Description
persistableTypes Tous les types persistants.
userDefinedTypes Collection de types définis par l'utilisateur (UDT) à inclure dans le contrat de service.
exposedMethods Collection de méthodes COM+ exposées lorsque l’interface sur un composant COM+ est exposée en tant que service Web.

Éléments parents

Élément Description
comContracts Contient une collection d’éléments comContract.

Notes

Les contrats de service d’intégration COM+ sont actuellement restreints à l’espace de noms http://tempuri.org et le nom de contrat est dérivé de l’interface COM de prise en charge. Toutefois, vous pouvez spécifier des alternatives à l'aide de la section comContracts, ainsi que l'élément comContract dans le fichier de configuration. Par exemple, vous pouvez utiliser la configuration suivante pour spécifier l'espace de noms, le nom de contrat et les types définis par l'utilisateur à inclure, ainsi que d'autres paramètres pour un contrat de service.

<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>

Lorsque le service est initialisé, les espaces de noms et les noms de contrat spécifiés sont appliqués aux descriptions de service générées.

Voir aussi