6


1

WCFをRESTと連携させるためにweb.configに最低限必要なものは何ですか? 私のメソッドに[WebGet]と注釈を付けましたが、メッセージが届きません。

3 Answer


6


  • .svcファイルのServiceHostディレクティブに次のコードを追加すると、WebHttpBindingとWebHttpBehaviorが自動的に設定されることを確認しました。

Factory = "System.ServiceModel.Activation.WebServiceHostFactory"

名前空間は、Web上の他の場所( このMSDNの記事など)とは少し異なることに注意してください。

これをした後、私はweb.configからセクション全体を削除することができました、そして、すべてはまだうまくいきました!


2


必ずエンドポイントでwebHttpBindingを使用してください(httpBindingまたはwsHttpBindingは使用しないでください)。 これが私のエンドポイントの設定です…​



1


サービスホストのアドレスを持っていることを確認する必要があります。


だから今、あなたが例えばのためにコンソールアプリを介して自己ホスティングしているなら…​あなたは以下を通してあなたのホストを呼び出すことができます:

WebChannelFactoryファクトリ=新しいWebChannelFactory(新しいUri( "http:// localhost:8080 / somebase"));

コンソールアプリが起動すると、そのアドレスがセルフホストされていてもアドレスは参照可能になり、あなたはあなたのwebget uriテンプレートに基づいてあなたのアクションを呼び出すことができるはずです。

この最小設定では、セルフホスティングを介してWCF RestFULLYを呼び出すことができます。 IISでホスティングしている場合は、svcファイルがカスタムホストに置き換わることを除けば、基本的に同じように機能します。