2011-06-10 29 views

回答

1

這不是最好的解決方案,我一直在嘗試一種方法來驗證路由服務是否按配置工作,但還沒有找到最好的方法。

但一個方法是提供一個匹配所有的過濾器,並有它接受所有的請求,並將其記錄服務,並返回404回客戶端

<routing> 
     <filters> 
      <filter name="Other" filterType="MatchAll" /> 
      <filter name="action1" filterType="Action" filterData="http://tempuri.org/action2" /> 
      <filter name="action2" filterType="Action" filterData="http://tempuri.org/action1" /> 
     </filters> 
     <filterTables> 
      <filterTable name="FilterTable"> 
       <add filterName="action1" endpointName="Service1" priority="1" /> 
       <add filterName="action2" endpointName="Service2" priority="1" /> 
       <add filterName="Other" endpointName="Logger" priority="0" /> 
      </filterTable> 
     </filterTables> 
    </routing> 

記錄儀終點僅指向一個簡單的服務,它接受一則短消息,並記錄它,並返回404

一些psudo代碼:

[ServiceBehavior] 
public class RoutingLogger : IYourInterface 
{ 
    public System.ServiceModel.Channels.Message YourInterfaceMethod(System.ServiceModel.Channels.Message message) 
    { 
     LogMessage(message); 
     return new Custom404Message(); 
    } 
} 
相關問題