私たちは、内部クライアント システムが基盤となるデータ ストアのレコードを作成、更新、クエリできるようにする新しい中間層サービスに着手しています。このサービスは、最大 3 つの個別の基礎となるデータストアを集約します。この質問の目的のために、次のことを前提とします。
データ ストア #1: 独自の XML データベース。
データ ストア #2: 既製のリレーショナル データベース。
データ ストア #3: フラット ファイル ストア (バイナリとして格納されたファイル)。
クライアントは、クエリ/更新しているデータストアを知りません (または気にしません)。新しいサービスがその決定を下します。私の質問は次のとおりです。私の API は XML またはオブジェクトを公開する必要がありますか? たとえば、新しい API には add メソッドがあります。システムが自動車保管システムであると仮定すると、API の add メソッドは次のようになります。
AddNewCar( CarObject car )
または、次のようになります。
AddNewCar( string carXml )
これで、2 番目のメソッドの入力時の型指定が弱くても、XML は少なくともスキーマに対してすぐに検証されます。
新しいサービスは C# で記述される予定です (バージョンはまだ決まっていませんが、おそらく WCF では 3/3.5 です)。API のクライアントは、C#/VBA/VB.Net/C++/Java である可能性があります。
詳細を教えてください。ありがとう
更新: API は、メッセージ バスを介して XML も発行することに注意してください。たとえば、新しい車が追加されると、車の XML が公開され、新しい車に関心のある人に通知されます。