<comContract>
Especifica um contrato de serviço de integração COM+.
<configuração>
<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>
Atributos e Elementos
As secções seguintes descrevem atributos, elementos subordinados e elementos principais.
Atributos
Atributo | Descrição |
---|---|
contrato | Uma cadeia que contém o tipo de contrato. |
name | Uma cadeia que contém o nome do contrato. |
espaço de nomes | Uma cadeia que contém o espaço de nomes do contrato. |
requiresSession | Um valor booleano que especifica se o contrato só pode ser utilizado em enlaces com sessão. Quando o serviço é inicializado, o runtime de integração garante que esta definição é consistente com o tipo de enlace a ser utilizado. É gerada uma exceção se um ou mais dos enlaces do contrato estiverem em conflito. Se esta propriedade for false , e um canal unidirecional estiver a ser utilizado e existirem parâmetros [out], também é gerada uma exceção. |
Elementos Subordinados
Elemento | Descrição |
---|---|
persistableTypes | Todos os tipos persistentes. |
userDefinedTypes | Uma coleção de Tipos Definidos pelo Utilizador (UDT) que deve ser incluída no contrato de serviço. |
exposedMethods | Uma coleção de métodos COM+ que são expostos quando a interface num componente COM+ é exposta como um serviço Web. |
Elementos Principais
Elemento | Descrição |
---|---|
comContracts | Contém uma coleção de comContract elementos. |
Observações
Os contratos do serviço de integração COM+ estão atualmente restritos ao espaço de nomes e o http://tempuri.org
nome do contrato é derivado da interface COM de suporte. No entanto, pode especificar alternativas ao utilizar a comContracts
secção, bem como o comContract
elemento no ficheiro de configuração. Por exemplo, pode utilizar a seguinte configuração para especificar o espaço de nomes, o nome do contrato e os tipos definidos pelo utilizador a serem incluídos, bem como outras definições para um contrato de serviço.
<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 o serviço é inicializado, os espaços de nomes especificados e os nomes dos contratos são aplicados às descrições de serviço geradas.