<comContract>
指定 COM+ 整合服務合約。
<<system.serviceModel>>
<comContracts>
<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 |
包含合約名稱的字串。 |
namespace |
包含合約命名空間的字串。 |
requiresSession |
布林值,指定合約是否只能用在工作階段繫結上。當服務初始化時,整合執行階段會確保這個設定與要使用的繫結型別是一致的。如果合約的一或多個繫結有衝突,便會產生例外狀況 (Exception)。如果這個屬性是 false,而且正在使用單向通道且存在任何 [out] 參數時,也會產生例外狀況。 |
子項目
項目 | 描述 |
---|---|
persistableTypes |
所有永久性類別。 |
userDefinedTypes |
要包含在服務合約中之使用者定義型別 (UDT) 的集合。 |
exposedMethods |
COM+ 方法的集合,這些方法會在 COM+ 元件上的介面公開為 Web 服務時公開。 |
父項目
項目 | 描述 |
---|---|
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>
當服務初始化時,指定的命名空間和合約名稱就會套用至所產生的服務描述。
請參閱
參考
ComContractElementCollection
ComContractElementCollection
ComContractElement
概念
其他資源
Integrating with COM+ Applications
How to: Configure COM+ Service Settings