9

モバイル アプリケーションで使用される JSON を返す .Net API を作成する必要があります。

1 つの方法は、MVC アプリを使用してコントローラーに JSON を返すようにすることです。したがって、url.com/controller/action/params に移動すると、JSON が返されます。

WCF サービスを作成することも良い選択だと聞いたことがあります。ただし、WCFについてはあまり知りません。

それぞれに長所と短所はありますか?JSONのみを返すサービスとして使用する方が信頼できますか?

4

3 に答える 3

7

もう 1 つの候補は、セルフ ホスト シナリオで WCF を使用するASP.NET Web API です。

長所と短所がありますが、それはすべて、現在必要なものと後者、専門知識のレベル、技術への取り組み、および設計のトレードオフは何かによって異なります。

それは、信頼できるとはどういう意味かによって異なります。1 つのテクノロジーが多かれ少なかれ信頼できるとは限りません。信頼性には多くの要因があります。

これらは、特定の順序、好み、または完全性に関係なく、いくつかの長所/短所の一部です。

ASP.Net MVC / WebApi / ServiceStack

長所:

  • 基本的なシナリオで数分以内にセットアップして実行する (URL に JSON データを取得させる)
  • 設定が簡単。
  • REST セットアップは簡単です。
  • ルーティングを完全に制御します。
  • JSON ネイティブ サポート (ASP.NET Web API は
    、モデルを JSON、XML、またはその他の形式に自動的にシリアル
    化し、シリアル化されたデータを HTTP 応答
    メッセージの本文に書き込むことができます)。

短所:

  • サービスを消費者に説明できません: クライアントのデータ型、操作、およびサービス要件を伝えることができる WSDL のような API はまだ存在しません
  • トランスポート セキュリティのみ - ポイント ツー ポイント セキュリティ
  • メッセージ レベルのセキュリティなし
  • Service Discovery プロトコルなし (現在)
  • メッセージ ルーティングなし
  • tcp などのマルチプロトコルのサポートなし
  • 単一のホスティング シナリオ (IIS - これもプロになる可能性があります)

WCF

長所:

  • マルチプロトコルのサポート
  • トランスポートとメッセージのセキュリティ
  • 高度な構成と相互運用性
  • 非常に拡張可能
  • ルーティング、デュプレックス、パブ/サブ、キューイングなど、さまざまなメッセージング シナリオをサポートします。
  • メッセージと内部の仕組みを形成するための多くのノブ
  • さまざまなホスティング シナリオ (IIS/WAS、Windows サービス、コンソール)

短所:

  • 急な学習曲線
  • REST ストーリーが弱い(はい、webHttpBinding は存在しますが、誰かに TemplateURI と WebInvoke/Web get と BodyStyle を説明してみてください)
  • たくさんのノブ
于 2012-05-03T07:00:38.127 に答える
2

探しているのがサービスだけなら、WCF のようなものをお勧めします。ただし、WCF は扱いにくいので、ServiceStackのような単純なものをお勧めします。基本的な POCO を使用してサービスを作成できます。また、組み込みで JSON/XML/SOAP に応答する準備ができています (追加の操作は必要ありません)。

于 2012-05-03T03:59:31.457 に答える
1

私は本当にWCFアプローチを採用します。これにより、柔軟性が向上し、たとえば HTTP だけでなく、さまざまなプロトコルを使用してサービスを実行できるようになります。

于 2012-05-03T03:59:20.560 に答える