チーム A が WebServiceA を作成します。タイプ Person を使用します。個人が WebServiceA で呼び出しによって登録されている場合は、他のシステムにも通知する必要があります (チーム B によって作成された WebServiceB への呼び出しによって、登録された人が渡されます)。
次に、人物がシステム B で編集されたら、変更をシステム A に移行する必要があります (変更された人物を渡す WebServiceA への呼び出しによって)。
問題は、両方の WebServices で同じ型を使用する方法です。xml を文字列として送信し、それを各 WebService 側のオブジェクトにシリアル化/逆シリアル化して、xml を操作する必要がないようにすることもできますが、それがより簡単な方法であるかどうか知りたいです。
私はこれをしたいと思います:
WebServiceA
Webmethod - RegisterPerson(Person person)
calls WebServiceB.PersonRegistered(person)
WebMethod - PersonModified(Person person)
WebSericeB
WebMethod - PersonRegistered(Person person)
WebMethod - ModifyPerson(Person person)
calls WebServiceA.PersonModified(person)
これの代わりに
WebServiceA
Webmethod - RegisterPerson(Person person)
calls WebServiceB.PersonRegistered(person.SerializeToXml())
WebMethod - PersonModified(string person) - deserialize to WebServiceA.Person
WebSericeB
WebMethod - PersonRegistered(string person) - deserialize to WebServiceB.Person
WebMethod - ModifyPerson(Person person)
calls WebServiceA.PersonModified(person.SerializeToXml())
チーム A では ASP.NET WebService を使用し、チーム B では Java を使用しています。両方のチームが .NET を使用していたら、何か変わるでしょうか?