WCF扩展执行顺序

时间:2012-02-14 20:47:21

标签: .net wcf .net-4.0 wcf-extensions

如果我有几个相同类型的WCF扩展模块(如参数检查器),我可以确定它们是按照我在配置文件中定义它们的顺序执行的吗?

<system.serviceModel>
    <extensions>
        <behaviorExtensions>
            <add name="MyInspectorA" type="blabla" />
            <add name="MyInspectorB" type="blabla" />
        </behaviorExtensions>
    </extensions>
</system.serviceModel>

我需要更多的保证,而不仅仅是我的观察,但在MSDN上找不到任何确认。

1 个答案:

答案 0 :(得分:6)

它们将按照它们出现在

中的顺序执行

<system.serviceModel> <behaviors> <[service|endpoint]Behaviors> <behavior> <behavior_1 /> <behavior_2 /> <behavior_n /> </behavior> </[service|endpoint]Behaviors> </behaviors> </system.serviceModel>

,而不是行为扩展中列出的顺序。

在端点行为之前调用服务行为 - 行为之间的顺序在http://blogs.msdn.com/b/carlosfigueira/archive/2011/03/16/wcf-extensibility-behaviors.aspx中描述。