WCF 通道工厂和操作行为

本文关键字:操作 通道 工厂 WCF | 更新日期: 2023-09-27 18:34:54

我有一个服务合同如下

[ServiceContract]
public interface IService
{
     [MyCustomBehavior]
     [OperationContract]
     void MyOperation();
}

问题是调用是否

 new ChannelFactory<IService>(myBinding, myUri)

是否会在调用之前隐式添加 MyCustomBehavior,只是因为我将 IService 传递给 ChannelFactory,还是我需要更深入地挖掘并将 MyCustomBehavior 显式设置为 MyOperation 操作?

WCF 通道工厂和操作行为

操作行为

操作行为,实现 IOperationBehavior 接口, 用于扩展每个客户端和服务运行时 操作。

有两种机制可用于将操作行为添加到 操作。第一种机制是创建一个自定义属性 用于对操作进行建模的方法。当操作 添加到服务主机或通道工厂,WCF 添加任何 IOperationBehavior 属性到上的行为集合 操作说明 为该操作创建。

第二种机制是直接将行为添加到 构造的操作描述上的行为集合。

我建议你先读一读。

使用行为配置和扩展运行时