ASP.NET MVC 3 よりも新しい WCF Web API を使用して、軽量の JSON Web サービス レイヤーを公開する利点は何ですか? 私は多くの点で Web API を気に入っていますが、欠点は、MVC 3 では動作するのに対し、mono では動作しないことです。2 つのアプローチの主な違いは何ですか?
4 に答える
Microsoftは、2つの製品の間にいくつかの重複があることを認識しています。ただし、焦点は異なります。
WebサービスからJSONを使用するWebサイトを構築している場合は、MVCがおそらく最良の選択です。
さまざまなサードパーティクライアントが使用することを目的としたAPIを構築している場合は、WCFWebAPIが最適です。
私自身の個人的な理由には、WCF Web APIを使用すると、Windowsサービスでセルフホストでき、ASP.NET、web.config、およびCassiniを回避できるという事実が含まれます:-)
リクエストにより 6/24/14 更新:
現在の ASP.NET Web API (以前の WCF Web API) と ASP.NET MVC は、現在 ASP.NET vNext (MVC 6) と呼ばれているものに正式に統合されます。
http://www.asp.net/vnext/overview/aspnet-vnext/overview
================================================== =========================
元の答え:
プロジェクトが正式に統合されることが昨日 (2012 年 2 月 8 日) 発表されました。見る:
http://www.c4mvc.net/meeting/?id=25
と
http://msdn.microsoft.com/en-us/hh824721
c4mvc リンクは、Dan Roth のプレゼンテーションへのリンクでまもなく更新されるはずです。
この質問は新しいWCF Web APIを対象としているため、重複としてリンクされている質問とは異なります。
WCF Web API は、現在の WCF Rest サポートのいくつかの制限を取り除きますが、Web API の主な欠点は、それがドラフト (現在はプレビュー 4) にすぎないことです。サポートがなく、おそらく運用環境での使用は想定されていません。また、新しいバージョンでは、重大な変更が導入されたり、以前のバージョンで使用できた機能セット全体が削除されたりする可能性があります。そのため、ASP.NET MVC を使用して軽量の JSON サービス レイヤーを構築する必要があります。
違いは昼と夜です。MVC フレームワークは Web サービス層ではありません。さまざまなクライアント (およびおそらくさまざまなプラットフォーム) によって使用される Web サービスが本当に必要な場合は、WCF ベースの Web サービスまたは昔ながらの XML Web サービスのどちらかを選択する必要があります。