支持事务的绑定流转默认也是被关闭,要通过配置或者编程的方式开启该选项;
WCF 支 持 三 种 不 同 的 事 务 处 理 协 议 : OleTx 、 WS-AT 1.0 、 WS-AT 1.1 分 别 对 应 于
TransactionProtocol 中的三个静态只读
属
性
OleTransactions(
与
Default
默
认
一
样
)
、
WSAtomicTransationOctober2004 、WSAtomicTransaction11
NetTcpBinding 和 NetNamedPipeBinding 通 过 TransactionFlow 设 置 支 持 事 务 的 开 关 ,
TransactionProtocol 设置事务协议;
WSHttpBinding、WSDualHttpBinding 和 WSFedrationHttpBinding 支持协议 WS-AT 1.0,而
WS2007HttpBinding 和
WS2007FederationHttpBinding 支 持 协 议 WS-AT 1.1, 它 们 仅 仅 只 有 TransactionFlow 没 有
TransactionProtocol 设置事务协议;
<configuration>
<system.serviceModel>
<bindings>
<netTcpBinding>
<binding name="transactionalTcpBinding" transactionFlow="true"
transactionProtocol="WSAtomicTransactionOctober2004">
</binding>
</netTcpBinding>
<ws2007HttpBinding>
<binding name="transactionalHttpBinding" transactionFlow="true"></binding>
</ws2007HttpBinding>
</bindings>
<services>
<service name="Service.WithdrawService">
<endpoint binding="customBinding"
bindingConfiguration="transactionalTcpBinding"
contract="Service.Interface.IWithdrawService" />
</service>
<service name="Service.DepositService">
<endpoint binding="customBinding"
bindingConfiguration="transactionalHttpBinding"
contract="Service.Interface.IDepositService" />
</service>
</services>
</system.serviceModel>