7

Windows サービスでホストされている WCF サービスがあり、BasicHttp エンドポイントを使用して、それに接続されている Windows Mobile デバイスにサービスを提供しています。

問題は、デバイス エミュレーターに関するものです。サービスに接続して問題なく使用できますが、実際のデバイスでは問題ありません。次のエラーが表示されます。

WCF HTTP ステータス 405: Method Not Allowed で要求が失敗しました。

次のコードを使用してサービスを実装しました。

BasicHttpBinding basicHttpBinding = new BasicHttpBinding();
basicHttpBinding.UseDefaultWebProxy = false;

m_ServiceHost.AddServiceEndpoint(typeof(IKooft), basicHttpBinding, "KooftService");
m_ServiceHost.Open();

どうすればこの問題を解決できますか?

4

3 に答える 3

4

IIS拡張機能、特に.wsdlの拡張機能が有効であることを確認してください。

IISの場合:

  • あなたのサイトのプロパティを見てください。
  • [ホームディレクトリ]タブで、[構成]をクリックします。
  • [追加]をクリックします(私のパスは「C:\ ProgramFiles(x86)\ CommonFiles \ MSSOAP \ BINARIES \ SOAPIS30.DLL」です)
  • 拡張子を.WSDLに設定し、「Get」と「Post」を許可します
  • 「スクリプトエンジン」と「ファイルが存在することを確認する」を選択します

それはそれであるはずです。

于 2009-01-19T16:42:35.040 に答える