我有一个自定义的OperationBehavior。我想立即将其应用于所有操作。 不幸的是,OperationBehaviors无法在整个服务或web.config中配置。如何为IIS托管的WCF服务上的所有操作添加OperationBehavior?
当在测试应用托管WCF服务,我可以做到以下几点:
foreach (var ep in _serviceHost.Description.Endpoints)
{
foreach (OperationDescription od in ep.Contract.Operations)
{
od.Behaviors.Add(new MyOperationBehavior());
}
}
_serviceHost.Open();
但我怎么做一个IIS托管Web应用程序?
我试图获得OperationContext.Current.Host.Description.Endpoints
Application_Start
,但当然OperationContext.Current
在任何操作开始之前不可用,所以我的方法失败。