2012-02-02 22 views
3

私たちには、他のアプリケーションとの統合のために何らかの形のWebサービス実装が必要なASP.Net C#アプリケーションがあります。現在、私たちはサービスマンを見ており、ESBも使用しています。ミュール。Webサービスの構築とASP.Netアプリケーション用のESBの統合?

MuleのようなESBをASP.Netアプリケーションに統合する最良の方法を理解しようとしています。

ESBをASP.Netアプリケーションに統合してESBと統合できるようにする必要がありますか?

はいの場合、ASP.NetアプリケーションとMuleと互換性のあるWebサービスタイプ(REST、WCF、SOAP、Servicestackなど)を選択するにはどうすればよいでしょうか?

答えて

2

ESBと統合できるように、ASP.NetアプリケーションにWebサービスを構築する必要がありますか?

通常、それは逆です。 Muleのような統合ミドルウェアは、既存のシステムに変更を加えずに接続できるように、数多くのプロトコルを話しています。

はい何 ASP.Netアプリケーションやミュールと互換性がありますWebサービスの種類 (例えばREST、WCF、SOAP、Servicestack)を選択するための良い方法でしょうか?

アプリケーションは本当に何も、既存のチャネルを持っていない場合は(?本当に?いなくても簡単なWebフォームのHTTP POST)と統合するために使用することができ、あなたはその統合ミドルウェアは、それに接続することができるAPIを公開します作成しているAPIスタイル(リソース指向のAPIの場合はREST、RPC指向のAPIの場合はSOAP)にマップするアーキテクチャ/技術を選択します。

+0

Webフォームページ(.aspx)があるので、ESBがこれらのページにデータを投稿できるとしますか?私はこの概念にあまり慣れていない。私はいつも、外部システムとの統合を提供する最善の方法はウェブサービスAPIを介したものであると仮定しました。 REST/SOAP。 – startupsmith

+0

もちろん、実行中のシステムを変更することはできません。これは、ESBの多くのプロトコルを話す能力が役立つときです。しかし、それがあなたのアプリのためのAPIを作成するあなたの計画の一部なら、それを行い、それを使用してください。 –

+0

元の考えは、APIを作成する代わりにESBを使用するということでした。私はいくつかの調査を行い、ESBをアプリケーションに接続する最善の方法はAPIを使用することだと結論付けました。しかし、フォーム・ポスト・アプローチを使用することが可能な場合は、これが最も簡単な方法と考えています。 – startupsmith

2

これは後方に表示されます。どのようなものと統合する必要がありますか、どのような機能を提供しようとしていますか?

Webサービスはその実装から切り離されています。システム機能を相互運用可能な方法で公開して、幅広いクライアントからアクセスできるようにする場合は、Webサービスを使用することを選択します。

ウェブサービス内で行うことはあなた次第です。たとえば、あなたのESBに接続することができます。あなたがそれをするのを妨げるものは何もありません。 ServiceStackは、既存のASP.NET(またはMVCアプリケーション)内からのホスティングもサポートしています.ServiceStackを構成するさまざまな方法については、Hello World exampleを参照してください。

REST/RPCはウェブサービスの設計と関係し、ServiceStackは両方のモデルをサポートしています。つまり、異なるHTTP動詞でサービスが呼び出されたときに異なる実装を提供する場合は、RestServiceBaseから継承します。どのように呼び出されても同じインプリメンテーションを使用する場合は、ServiceBaseを継承します。 This articleは、RESTとRPC/SOAPの違いを示しています。また、両方をServiceStackでサポートする方法を示しています。あなたは、あなたが、それは別のHTTP動詞がをRestServiceBase使用使用して管理することを可能にする「リソース」を暴露するのであれば

あなたは、単一の操作を暴露(またはSOAPをサポートしたい)場合は、ServiceBaseを使用しています。

+0

私たちは他のesbsと統合したいので、独自の実装が最良の方法です。だから、Webサービスを実装してesbと統合する最良の方法は? – startupsmith

+0

mythzが言うように、これは後方です。 ESBはアプリケーションと統合されています。 ESBは、Web層、API、データベース、メッセージング、ディレクトリ内のファイルなど、さまざまなアプローチを使用して任意のレベルで統合できます。 –

+0

このasp.netアプリケーションを現在の形式で使用すると、ESBはどのようにESBと統合できますか? – startupsmith