2011-05-19 78 views
2

我有一個WCF服務(使用HTTP綁定),我們的WinForm和WFP應用程序可以毫無問題地使用它。我們有一位Silverlight 4開發人員說他無法使用WCF服務,因爲需要爲Silverlight使用「重新配置」服務。我不知道這是否屬實,因爲我對Silverlight一無所知。Silverlight 4和WCF

所以,我的問題是這樣的。使用HTTP綁定的WCF服務是否應該被我們的WinForms和WPF應用程序成功使用,並且也能夠被Silverlight應用程序使用,而無需修改或重新配置WCF服務?

回答

2

Silverlight 4的支持以下綁定:

  • basicHttpBinding的

  • PollingDuplexHttpBinding

  • CustomBinding(具有結合元件的子集)

Silverlight and WCF Feature Comparison

有幾種方法可以使用WCF 客戶端堆棧來訪問服務。

它在通過自動生成的 代理調用服務 時使用,如如何: 從Silverlight訪問服務中所述。通過在Silverlight項目中使用Visual Studio 2010 中的Add Service 參考工具,必須在此 過程中生成 代理。

注意:通過使用WCF svcutil.exe的工具不會在 的Silverlight 4,使用工作SLsvcutil.exe 工具,而是生成

代理。有關使用此Silverlight工具的更多信息 ,請參閱 使用SLsvcUtil.exe訪問 服務。

如果你已經有了一個Windows 通訊基礎(WCF)服務合同 定義,你可以使用 通用的ChannelFactory類,而不需要生成一個代理 。例如,這可能是 ,例如,如果您的客戶端012xx與服務器上的項目共享服務定義 代碼。 在這種情況下,例如,您可以在 服務器和Silverlight項目中定義服務合同接口 IStockQuoteService,然後使用 相同的IStockQuoteService代碼。 這將涉及使用ChannelFactory的 。 此高級技巧是 演示如何:撥打 異步使用 渠道工廠和在Silverlight中 4上下文與建設和訪問 雙工服務。有關定義和使用服務 合同的更多信息,請參閱設計服務 合同。