規定 COM+ 整合服務合約。
<configuration>
<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>
屬性和項目
下列章節說明屬性、子元素和父元素。
Attributes
| Attribute | Description |
|---|---|
| 合約 | 包含合約類型的字串。 |
| 名稱 | 包含合約名稱的字串。 |
| 命名空間 | 包含合約命名空間的字串。 |
| requiresSession | 一個布林值,指定該契約是否只能用於會話綁定。 服務初始化時,整合執行時會確保此設定與所使用的綁定類型一致。 若合約的一項或多項約束力存在衝突,則會產生例外。 若此性質為 false,且使用單向通道且存在任何[出]參數,則也會產生例外。 |
子專案
| 元素 | Description |
|---|---|
| 可持續型態 | 所有可持續的類型。 |
| userDefinedTypes | 一組將包含在服務合約中的使用者定義類型(UDT)。 |
| 暴露方法 | 一組 COM+ 方法,當 COM+ 元件的介面被公開為 Web 服務時,這些方法會被揭露。 |
父項目
| 元素 | Description |
|---|---|
| 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>
服務初始化時,指定的命名空間與合約名稱會套用到產生的服務描述中。