0

このWCFサービスはSharepoint2010Webアプリケーションでホストされています。WCFは、次のファクトリを使用して作成されています。

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サービスではないからだと思いますよね?

では、既存のjQueryサポートを壊さずにC#.NETプロジェクトでそれを使用するにはどうすればよいですか?

4

1 に答える 1

1

はい、サービス参照の追加はWCFRESTサービスでは機能しません。ここにはいくつかのオプションがあります。

  1. 別のエンドポイント(SOAPベースのエンドポイント)をサービスに追加して、クライアントで[サービス参照の追加]を使用できるようにします。正確にはわかりませんがMultipleBaseAddressWebServiceHostFactory、エンドポイントがどのように作成され、別のファクトリで再作成されるかを確認してから、SOAPエンドポイントを追加することができます。
  2. もう1つの方法は、サービス実装と.NETクライアント間でインターフェイス定義(サービスコントラクトと既存のデータコントラクト)を共有することです。そのインターフェースがあれば、を使用WebChannelFactory<T>してRESTサービスへのプロキシを作成できます(SOAPサービス用のプロキシがあるように)。
于 2012-12-06T23:47:24.383 に答える