我有一個自定義的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
在任何操作開始之前不可用,所以我的方法失敗。