2012-01-24 11 views
0

.NET 4.0でReST WCFサービスを作成しました。これはIIS(.svc)でホストされています。 .svcファイルはIIS 7.5で正しくマップされています。 MVC 3でWCFサービスを使用しようとすると、エラーが発生します。MVC3でReST WCFを消費する問題

"リモートサーバーから予期しない応答が返されました:(405)メソッドが許可されていません。

MVCプロジェクトにサービスリファレンスを追加してプロキシを作成しました。あなたがこの問題に遭遇して解決策があるかどうかを教えてください。

助けてください!私はすでに2日間それを費やしました。

+0

スタックオーバーフローの問題を参照してください:http://stackoverflow.com/questions/41155/wcf-service-returning-method-not-allowed –

答えて

0

RESTサービスを消費すると、RESTスタイルと同様にサービス参照を追加する必要はありません。クライアントとサービスは独立しています。

休憩サービスを利用するには、articleをご覧ください。

また、POSTのために定義されたメソッドに対してGET操作を実行しようとしているか、またはその逆である可能性があります。

+0

ご協力いただきありがとうございます!あなたは "GET"メソッドで "POST"リクエストを実行することにしました。私はそれを "POST"に変更したところ、うまくいきました。私はそれを "GET"メソッドにしたいと思います。どのように私はそれを維持し、プロキシを使用することができますか?私はリンクを通過し、私は質問があります。あなたはどのように "CompositeType"クラスにアクセスしていますか?すべての私のdatacontractsは別のプロジェクトで定義されています。私はMVC3の強タイプオブジェクトを利用したいと思います。私のWCFはJSON要求と応答を期待しています。前もって感謝します! –

+0

データコントラクトにアクセスするには、別々のプロジェクトにあるので、MVCプロジェクトとWCFサービスプロジェクトに参照を追加することができます。顧客がサービスにアクセスする必要がある場合は、契約プロジェクトを出荷するだけです。しかし、プロジェクトに契約だけがあり、それ以外のものはないことを確認してください。メソッドをPOSTからGETに変更する場合は、WebInvoke属性をWebGetで置き換えることができます。これで十分です。そうでなければ、WebGet属性で別のメソッドを作成します。プロキシを使用する場合は、クライアントとサービス間の通信にSOAPを使用する – Rajesh

+0

プロキシを使用してREST WCFでGET操作を実行する方法はありますか?はいの場合、どうですか?そうでない場合は、他にどのような選択肢がありますか? –

関連する問題