1

我正在努力理解如何定义一个允许返回可以在客户端上转换为真实对象的泛型类型 Object 的 WSDL。例如,对于 4 个不同的方法调用,我有一个返回类型 Object。这 4 种不同的方法在调用时具有不同的参数对象。(例如 CreatePerson(Person)、CreateAnimal(Animal) 等...)每个返回的 ResultObject 都有一个“Object”属性,该属性将包含操作的对象参数。(例如 CreatePerson(Person) 将返回 ResultObject.Object = Person,返回的 Person 对象将具有更新的属性,如 ID、一些时间戳等...)

我应该为每个对象只拥有一个 Result 对象吗?(例如 ResultPerson = CreatePerson()、ResultAnimal = CreateAnimal() 等...)

我必须在编码之前对 API 进行布局,所以感谢您的任何建议!

4

1 回答 1

1

我应该Result为每个对象都有一个对象吗?(例如ResultPerson = CreatePerson(),ResultAnimal = CreateAnimal()等...)

绝对地!没有什么比强类型语言必须处理返回泛型的 API 更令人恼火的了Object。让你的 API真的很难使用的代价,你几乎没有得到任何好处。

不要对课程的激增感到不安。毕竟它们是由诸如wsdl2-something(例如wsdl2java)之类的工具创建的。如果您的所有结果都有一些共同的属性,请考虑使用一种抽象基类型(例如Animal)并进行扩展。这将使您的 API 变得更好。

于 2012-11-18T20:49:44.057 回答