Share via


<contrattoCom>

Specifica un contratto del servizio COM+ Integration.

<Configurazione>
  <system.serviceModel>
    <comContracts>
      <contrattoCom>

Sintassi

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

Attributi ed elementi

Nelle sezioni seguenti vengono descritti gli attributi, gli elementi figlio e gli elementi padre.

Attributi

Attributo Descrizione
contract Stringa che contiene il tipo di contratto.
name Stringa che contiene il nome del contratto.
namespace Stringa che contiene lo spazio dei nomi del contratto.
requiresSession Valore booleano che specifica se il contratto può essere usato solo nelle associazioni con sessione. All'avvio del servizio, il runtime di integrazione verifica che questa impostazione sia coerente con il tipo di associazione da usare. Viene generata un'eccezione se una o più delle associazioni per il contratto sono in conflitto tra loro. Se questa proprietà è false e viene usato un canale unidirezionale in presenza di parametri [out], viene generata un'eccezione.

Elementi figlio

Elemento Descrizione
persistableTypes Tutti i tipi persistenti.
userDefinedTypes Raccolta di tipi definiti dall'utente che deve essere inclusa nel contratto di servizio.
exposedMethods Raccolta di metodi COM+ che vengono esposti quando l'interfaccia in un componente COM+ viene esposta come servizio Web.

Elementi padre

Elemento Descrizione
comContracts Contiene una raccolta di elementi comContract.

Commenti

I contratti di servizio di integrazione COM+ sono attualmente limitati allo http://tempuri.org spazio dei nomi e il nome del contratto deriva dall'interfaccia COM di supporto. È tuttavia possibile specificare alternative usando la sezione comContracts e anche l'elemento comContract nel file di configurazione. Ad esempio, è possibile usare la configurazione seguente per specificare lo spazio dei nomi, il nome del contratto, i tipi definiti dall'utente da includere e altre impostazioni per un contratto di servizio.

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

Quando il servizio viene inizializzato, gli spazi dei nomi specificati e i nomi del contratto vengono applicati alle descrizioni del servizio generate.

Vedi anche