<comContract>
Especifica um contrato de serviço de integração COM+.
<configuration>
<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 seções a seguir descrevem atributos, elementos filho e elementos pai.
Atributos
Atributo | Descrição |
---|---|
contrato | Uma cadeia de caracteres que contém o tipo de contrato. |
name | Uma cadeia de caracteres que contém o nome do contrato. |
namespace | Uma cadeia de caracteres que contém o namespace do contrato. |
requiresSession | Um valor booliano que especifica se o contrato só pode ser usado em associações de sessão. Quando o serviço é inicializado, o runtime de integração garante que essa configuração seja consistente com o tipo de associação a ser usada. Uma exceção será gerada se uma ou mais associações do contrato estiverem em conflito. Se essa propriedade for false , um canal unidirecional estiver em uso e houver parâmetros [out], uma exceção também será gerada. |
Elementos filho
Elemento | Descrição |
---|---|
persistableTypes | Todos os tipos persistentes. |
userDefinedTypes | Uma coleção de UDTs (tipos definidos pelo usuário) 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 em um componente COM+ é exposta como um serviço Web. |
Elementos pai
Elemento | Descrição |
---|---|
comContracts | Contém uma coleção de elementos comContract . |
Comentários
No momento, os contratos de serviço de integração COM+ são restritos ao namespace http://tempuri.org
e o nome do contrato é derivado da interface COM de suporte. No entanto, é possível especificar alternativas usando a seção comContracts
, bem como o elemento comContract
, no arquivo de configuração. Por exemplo, você pode usar a configuração a seguir para especificar o namespace, o nome do contrato e os tipos definidos pelo usuário a serem incluídos, bem como outras configuraçõ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 for inicializado, os namespaces e nomes de contrato especificados serão aplicados às descrições de serviço geradas.