私は新しいプロジェクトに取り組んでいます。通常の昔ながらのWebサービスよりもWCFWebサービスを使用することにメリットはありますか?
Visual Studioは、両方のテンプレートを提供します。違いは何ですか?長所と短所?
私は新しいプロジェクトに取り組んでいます。通常の昔ながらのWebサービスよりもWCFWebサービスを使用することにメリットはありますか?
Visual Studioは、両方のテンプレートを提供します。違いは何ですか?長所と短所?
「通常の昔ながらの Web サービス」とは何ですか? ASMX サービスですか、それとも WSE も使用していますか? ASMX サービスはもともと相互運用性がなく、WS-* 仕様をサポートしていません。また、ASMX は非常に急速に古くなるテクノロジです。WSE (Web Service Enhancements) サービスは WS-* のサポートを追加し、相互運用可能にすることができますが、WCF は WSE を置き換えることを意図しているため、時間をかけて学習する必要があります。あなたのアプリケーションが簡単で汚れた 1 回限りのものでない限り、WCF を選択すれば、非常に高い柔軟性が得られ、最終的にはより優れた設計になると思います。WCFには[WebMethod] 属性を超える学習曲線がありますが、私の意見では、学習曲線は誇張されすぎており、従来の ASMX サービスよりも指数関数的に強力で将来性があります。
あなたのタイム ラインが単に学習曲線に耐えられない場合を除き、ASP.NET Web サービスに固執するのではなく、WCF を学習することに大いに有利になるでしょう。アプリケーションの分散化と相互接続はますます進む一方です。WCF は、Microsoft プラットフォーム上の分散コンピューティングの未来です。
これが2つの比較です。
すべてを自分で行うことの長所は次のとおりです。
WCFの長所は次のとおりです。
WCFの欠点:一部の静的プロパティ名はかなり長くなる可能性があります...
要約すると、WCFを使用するとプログラミングに集中できますが、最初にそれを学ぶ必要があります;-)
Pro for WCF : Web サーバー (IIS など) は必要ありません。実際にはサーバー OS は必要ありません。
WCF サービスを作成すると、サービスを実装から簡単に分離できるという事実が気に入っています。サービスを記述して、IIS、コンソール アプリケーション、または Windows サービスでホストできます。HTTP、ネット TCP などを介して通信することもできます。
サービスの実装と相互作用の単体テストがより簡単になります。
プロジェクトでフレームワーク 4.0 を使用している場合は、理解しやすく、構成より規則を使用する WebApi を試してみませんか。
超高速インターフェースを備えたアプリケーションを構築する優れた方法
MS の入門ビデオをご覧ください。これは、WCF データ サービスから進化したものです。
http://www.asp.net/web-api/overview/getting-started-with-aspnet-web-api
私の経験では
WCF
それを扱うのはとてつもなく冗長であり、他のマイクロソフト製品との互換性は完全ではありません。もちろん、マイクロソフトの世界以外では広く受け入れられていません。
しかし、私の主な問題は、安定しておらず、(状況によっては) 失敗する傾向があり、使用する前に微調整する必要があることです。
その代わり
SOAP (別名標準 Web サービス)、それは動作し、動作しやすく、広く互換性があります (Java-JAX は変更なしで受け入れます)。
SOAP に認証を追加するのは少し難しいかもしれませんが、不可能ではありません。