<comContract>
Указывает контракт службы интеграции COM+.
<Конфигурации>
<system.serviceModel>
<comContracts>
<comContract>
Синтаксис
<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>
Атрибуты и элементы
В следующих разделах описаны атрибуты, дочерние и родительские элементы.
Атрибуты
Атрибут | Описание |
---|---|
contract | Строка, содержащая тип контракта. |
name | Строка, содержащая имя контракта. |
пространство имен | Строка, содержащая пространство имен контракта. |
requiresSession | Логическое значение, указывающее, ограничено ли использование контракта только сеансовыми привязками. При инициализации службы среда выполнения интеграции обеспечивает согласованность этого параметра с типом используемой привязки. В случае конфликта одной или нескольких привязок для контракта создается исключение. Если это свойство имеет значение false , то при использовании одностороннего канала и наличии параметров [out] также создается исключение. |
Дочерние элементы
Элемент | Описание |
---|---|
persistableTypes | Все сохраняемые типы. |
userDefinedTypes | Коллекция пользовательских типов (UDT), подлежащая включению в контракт службы. |
exposedMethods | Коллекция методов COM+, которые предоставляются при предоставлении интерфейса компонента COM+ как веб-службы. |
Родительские элементы
Элемент | Описание |
---|---|
comContracts | Содержит коллекцию элементов comContract . |
Комментарии
Контракты службы интеграции COM+ в настоящее время ограничены пространством http://tempuri.org
имен, а имя контракта является производным от поддерживающего COM-интерфейса. Однако можно указать альтернативы, используя раздел comContracts
, а также элемент comContract
в файле конфигурации. Например, для указания пространства имен, имени контракта и подлежащих включению пользовательских типов, а также других параметров контракта службы можно использовать следующую конфигурацию.
<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>
После инициализации службы указанные пространства имен и имена контрактов применяются к созданным описаниям служб.