2012-05-14 82 views
0

我嘗試使用netTcpRelayBinding和azure服務總線來使我的服務可擴展。我需要在服務器端和客戶端都使用這種綁定。它在Microsoft.ServiceBus.dll中實現,因此我應該將此.dll部署到客戶端。但它要求.NET框架完整配置文件。但在客戶端可以只有.NET框架客戶端配置文件。而且我絕對確信在客戶端安裝Full Profile是個不錯的主意。 有什麼解決方法嗎?ServiceBus.dll vs .NET 4 Framework客戶端配置文件

+2

提出新前接受更多的答案,請。 – abatishchev

回答

1

服務總線客戶對一系列不在客戶端配置文件支持的能力,最主要的是託管服務的能力的依賴是從客戶的個人資料,這是一個要求缺席中繼功能。如果你想安裝的應用程序只有客戶端,您可以使用常規的NetTcpBinding的交談與兩個警告中繼端點:

a)您需要使用RelayClientAuthenticationType.None斷開繼電器安全(見http://msdn.microsoft.com/en-us/library/windowsazure/microsoft.servicebus.relayclientauthenticationtype.aspx)或者你需要收購,並添加自己的道理,這是服務總線組件做什麼你,這是一個有點複雜而沒有代碼,我不認爲我們有專門的公共樣呢。

b)您需要在指定的ChannelFactory兩個地址 - 的的EndpointAddress需要使用SB:前綴和通過開放的我們需要使用的net.tcp:前綴

0

在客戶端擁有完整的框架並不是一件壞事。客戶端配置文件的大小沒有減小以去除「不安全」位,只是不常用的位。邏輯是爲發佈應用程序的用戶提供更小的下載。這些日子都有點冗餘。

雖然沒有合適的解決方法,甚至沒有想到要從完整框架中提取所需的程序集,只需安裝完整的框架即可。

對於什麼讓你覺得把整個客戶端放在工作站上感興趣,首先是一個壞主意。

+0

我的客戶不是極客。沒有人喜歡需要額外先決條件的軟件。客戶端配置文件更受歡迎,我有更多的機會在客戶端機器上找到它。 – Sergey

0

首先我建議閱讀下面的討論,也能完全理解和客戶端配置文件之間的差異:在此基礎上,你可以瞭解到大多數的Windows Azure部件都依賴於使用完整的個人資料,主要是因爲網絡的 Differences between Microsoft .NET 4.0 full Framework and Client Profile

,WCF和其他服務是完整配置文件的一部分,您確實需要使用完整配置文件才能讓這些庫實現工作。在Microsoft.ServiceBus.dll實施

相關問題