Dela via


<comContract>

Anger ett COM+-integrationstjänstkontrakt.

<Konfiguration>
   <system.serviceModel>
     <comContracts>
       <comContract>

Syntax

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

Attribut och element

I följande avsnitt beskrivs attribut, underordnade element och överordnade element.

Attribut

Attribut Beskrivning
Kontrakt En sträng som innehåller kontraktstypen.
name En sträng som innehåller kontraktsnamnet.
namnområde En sträng som innehåller kontraktnamnområdet.
requiresSession Ett booleskt värde som anger om kontraktet endast kan användas för sessionskänsliga bindningar. När tjänsten initieras säkerställer Integration Runtime att den här inställningen är konsekvent med den typ av bindning som ska användas. Ett undantag genereras om en eller flera av bindningarna för kontraktet är i konflikt. Om den här egenskapen är falseoch en enkelriktad kanal används och det finns några [out]-parametrar genereras också ett undantag.

Underordnade element

Element Beskrivning
persistableTypes Alla beständiga typer.
userDefinedTypes En samling användardefinierade typer (UDT) som ska ingå i tjänstkontraktet.
exposedMethods En samling COM+-metoder som exponeras när gränssnittet på en COM+-komponent exponeras som en webbtjänst.

Överordnade element

Element Beskrivning
comContracts Innehåller en samling comContract element.

Kommentarer

COM+-integreringstjänstkontrakt är för närvarande begränsade till http://tempuri.org namnområdet och kontraktsnamnet härleds från det stödjande COM-gränssnittet. Du kan dock ange alternativ med hjälp comContracts av avsnittet samt elementet comContract i konfigurationsfilen. Du kan till exempel använda följande konfiguration för att ange namnrymd, kontraktnamn och användardefinierade typer som ska inkluderas, samt andra inställningar för ett tjänstkontrakt.

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

När tjänsten initieras tillämpas de angivna namnrymderna och kontraktnamnen på de genererade tjänstbeskrivningarna.

Se även