2013-07-01 49 views
0

我在我的項目中使用了服務總線。我指的是2.0.0.0版本的dll。app.config中所需的綁定擴展

當我添加以下在我的app.config標籤的一切工作正常

 <extensions> 
     <bindingExtensions> 
      <add name="netTcpRelayBinding"  
      type = 
      "Microsoft.ServiceBus.Configuration.NetTcpRelayBindingCollectionElement, 
      Microsoft.ServiceBus, Version=2.0.0.0, Culture=neutral, 
      PublicKeyToken=31bf3856ad364e35" /> 
     </bindingExtensions> 
    </extensions> 

,但只要我刪除此標籤,它提供了以下錯誤

配置綁定擴展「system.serviceModel/bindings/netTcpRelayBinding'找不到。 驗證此綁定擴展已在system.serviceModel/extensions/bindingExtensions中正確註冊,並且拼寫正確。

是否強制要求提供此標籤,因爲在其他某臺機器上它工作正常,沒有此標籤。

回答

1

這是WCF必須能夠從正確的DLL加載此綁定。有些情況下,你可以將其添加到其他配置文件,如machine.config,WCF將從那裏選擇它,因此該應用程序將工作,而無需在app.config文件中。

+0

但問題是,它在具有單一版本的Azure SDK的機器上工作,並且當Azure SDk的多個版本發生錯誤時,在這種情況下,我們必須從配置中移除BindingExtensions標記,然後才能正常工作 – Deepesh