2012-12-06 67 views
0

我已將此WCF服務託管在Sharepoint 2010 Web應用程序中。 WCF已使用以下工廠創建:在.NET中使用WCF REST服務?

Factory="Microsoft.SharePoint.Client.Services.MultipleBaseAddressWebServiceHostFactory, Microsoft.SharePoint.Client.ServerRuntime, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" 

正如您所看到的,這是創建REST類型的服務。因爲我們需要通過jQuery使用客戶端。

現在我們還需要從.NET項目(WinForms)訪問它。我試過在VS中添加服務引用,但沒有找到任何東西。我想這是因爲它不是一個SOAP服務嗎?

那麼,如何在C#.NET項目中使用它而不會破壞現有的jQuery支持?

回答

1

是,Add Service Reference does not work for WCF REST services。你有幾個選擇這裏:

  1. 添加另一個端點爲您服務,一個基於SOAP的一個,這樣你就可以使用添加服務引用您的客戶端上。我不知道MultipleBaseAddressWebServiceHostFactory到底是什麼,但你可以看看它是如何創建它的端點並在另一個工廠重新創建的 - 然後添加額外的SOAP端點
  2. 另一種方法是共享接口定義(服務契約加上任何現有的數據契約)在服務實現和.NET客戶端之間。通過該接口,您可以使用WebChannelFactory<T>爲REST服務創建代理(就像您爲SOAP服務創建代理一樣)。
+0

我不確定如何查看工廠創建的內容。我去了部署.svc的Sharepoint文件夾(ISAPI),但那裏沒有web.config。所以我不知道到底在哪裏定義端點。 – emzero