2009-11-02 10 views
5

.NET Webサービスから返す(またはNOTデータセット)のベストプラクティスはありますか?あるキャンプは、相互運用性を促進し、XMLスキーマを使用してWebサービスのペイロードを定義する必要があると言います。もう1つのキャンプでは、Visual Studioで簡単なのでデータセットを返す必要があります。抗データセットのキャンプでWebサービスでデータセットを返すかどうかを指定するには?

いくつかの引数:

  • データセットは
  • データセットはほとんどのサードパーティ製のソフトウェアでサポートされていないように見えるWSI準拠していないプロのデータセットで

いくつかの引数キャンプ:

  • これらはVisual Studioで非常に便利で簡単に作成できます。
  • 相互運用性は、クライアント側の
  • データセットは、私はあなたがいけないのキャンプになります使用

答えて

3

データセットを使用しますか?私は何千回も言いません。他のツールキットとの相互運用性はありません。確かに、あなたの唯一の消費者は現在.NETですが、物事はすぐに変わる可能性があり、準備ができていいです。

The XML Filesを参照してください。

また、新しいサービスを開発する場合は、WCFを使用して記述します。それからあなたはあなたが望むようにそれらを公開することができます。サービスとコンシューマが内部で、両方が.NETの場合は、パフォーマンス向上のためにTCPバインディングを使用できます。その後、他の誰かがあなたのサービスと通信したい時に、あなたのJavaアプリケーション(例えば)があなたのサービスと相互運用できるように新しいWebサービスバインディングを追加することができます。便利なフローチャートについては、Choosing the right WCF bindingを参照してください。

1

を容易にするための利点を持っている問題ではないように、我々(私の会社は)のみ.NETで開発それを送信しますが、これはあなたの会社にとって重要なことに基づいて行われる決定です。

基本的に会社とクライアントの間の契約であるWebサービスAPIを設計する場合。したがって、社内の一部のユーザーは、ミッションクリティカルな操作にこのAPIを使用することがあります。

次に、ブラックベリーで動作するように要求します。これでWebサービスが変更され、他のアプリケーションが破損し、波及効果が発生する可能性があります。

したがって、.NET以外の他のプラットフォームをサポートする必要がないことが確かな場合は、最初のオプションを使用してください。

0

私はデータセットがなくてもいいです(ここのコミュニティのほとんどと同じです)。 Jamesが言っているように、あなたのサービスは.NETアプリケーションによってのみ消費されることは決してありません。 Webサービスの主な理由は、それが正しいものを作成すれば、すべてのテクノロジで使用できる標準です。

DataSetは、ドメイン駆動型デザインとレイヤーの分離のアイデアも壊しています。したがって、最初は以前のように魅力が薄れます。 私はそれらをデモ用に使用するのは迅速かつ汚れている必要があります)

IDEで開発してもなお簡単な方法ですべての標準に準拠したい場合は、 WCF。

関連する問題