根据 MSDN 中的这篇文章,WCF 行为的评估顺序为:
- 合同
- 手术
- 端点
- 服务
我有一个使用 ServiceAuthorizationManager 类来为请求执行一些自定义安全验证的服务。此授权管理器与实现 IServiceBehavior 的 ServiceAuthorizationBehavior 挂钩。
我还定义了实现 IEndpointBehavior 的自定义行为。
根据上面的顺序,端点行为应该在服务行为之前被评估,但是,日志证明不是这样。ServiceAuthorizationBehavior 在端点行为之前被评估。
这是一个错误吗?这里发生了什么?
谢谢,穆罕默德