質問: ### 前提・実現したいこと 現在、ホスティング(Windowsレンタル共用サーバ)上で、ASPアプリケーションを開発しています。 共用サーバということから、サーバーの安定稼働の問題があり、一部の機能を、クライアントアプリケーションに分割することとなりました。ただ、クライアントアプリケーションから、ホスティング側のサーバー(IIS、Database)に直接アクセスでいないため、すでに稼働しているASPアプリケーションにWebAPIを実装して、クライアントを介して処理を行おうと検討しています。 VisualStudioから、追加を行うときに、”ASP.net Webサービスアプリケーション”、”WCF サービスアプリケーション”の2つがあり、どちらを使うのがよいのかいまいちピンときません。 ### 発生している問題・エラーメッセージ ``` エラーメッセージ ``` ### 該当のソースコード ``` ここにご自身が実行したソースコードを書いてください ``` ### 試したこと サンプルメソッドを作成してみて、クライアントプログラムから、それぞれメソッドが使用できることは確認しています。 ### 補足情報(言語/FW/ツール等のバージョンなど) ASP:ASP.net Framework4.0 クライアント:VB.net 2013 Framework4.5
回答: > > VisualStudioから、追加を行うときに、”ASP.net Webサービスアプリケーション”、”WCF サービスアプリケーション”の2つがあり、どちらを使うのがよいのかいまいちピンときません。 > > > レンタルサーバーで ASP.NET Web アプリを運用しているが、その ASP.NET がホストする Web サービスを追加することを検討していて、それには旧来の Web サービス(.asmx)と WCF のどちらが良いかという質問ですか? 具体的にどういうサービスを提供したいのか書いてないのではっきりしたことは言えませんが・・・ Microsoft は Web サービスは "Legacy Technology" なので WCF を使うようにと言ってますので、そこだけ考えれば WCF という選択になるのではないでしょうか。 ただ、最近は JSON データをやり取りする RESTful なサービスが流行りらしいので、個人的には WCF も "Legacy Technology" になりつつあるような気がしますが。 ASP.NET Web API も選択肢に含めて検討してはいかがでしょう。 注:従前の Web サービスも WCF も JSON データのやり取りはできます(具体例は下記の記事を見てください)。なので、その理由で Web サービスや WCF を選択肢から外す必要はないと思います。 jQuery AJAX と Web サービス WCF と jQuery AJAX オマケ(?)に、上の記事の WCF サービスを HttpWebRequest で呼び指す方法も紹介しておきます。 HttpWebRequest で WCF サービスを呼出