WCF中端点行为的执行顺序是什么?

时间:2012-09-24 07:18:56

标签: wcf enterprise-library endpointbehavior

WCF中端点行为的执行顺序是什么? 我希望只有在请求通过验证块时才会发生日志记录。 但就我而言,即使验证失败,审计拦截器也会记录请求。

我有两个行为延伸:

<behaviorExtensions>
<add name="validation"/>
<add name="Auditing"/>
</behaviorExtensions>

然后在我的行为中:

<behaviors>
<endpointBehaviors>
<validation ruleset"AuthenticationRuleSet"/>
<Auditing />
</endpointBehaviors>
</behaviors>

1 个答案:

答案 0 :(得分:4)

来自MSDN

  

评估订单

     

System.ServiceModel.ChannelFactory和   System.ServiceModel.ServiceHost负责构建   编程模型和描述的运行时。行为,如   之前描述的,为服务的构建过程做出贡献,   终点,合同和运作。

     

ServiceHost按以下顺序应用行为:

     

服务

     

合同

     

端点

     

操作

     

在任何行为集合中,无法保证订单

     

ChannelFactory按以下顺序应用行为:

     

合同

     

端点

     

操作

     

在任何行为集合中,无法保证订单

出于验证目的,您可能应该查看Message Inspectors