2

有这样的方法会更好吗:

#1void AddPerson(Person p);

或者

#2void AddPerson(int id, string lastName, string firstName);

解释。

我注意到的一个问题是我无法将我的网络浏览器指向 AddPerson 并测试#1,但我可以测试#2。

4

2 回答 2

3

除了ahus1所说的,创建一个单独的 Person.xsd XML 模式几乎总是一个好主意,因为这样您可以将此 Person.xsd 导入其他 XML 模式,例如 Invoice.xsd,创建一种通用语言来描述你的事。

此外,它使编排服务变得更加简单,假设您可能将给定的客户属性添加到实际上来自 Person 类型的 Invoice。这样,您只需一步即可将客户价值分配给其他 Person 元素,而不必在每一步中复制所有 Person 属性。

您可以在Canonical Schema SOA Pattern 中找到有关这种方法的好处的良好信息。

于 2012-09-29T02:52:10.427 回答
2

如果您传递一个人而不是不同的元素,那么当您将来增强 Person 时会更容易,例如使用出生日期:您的方法名称保持不变,您只需增强您的域模型填充或阅读您需要的出生日期。

此外,您会发现,一旦您获得嵌套对象(如果您想添加即地址),Person 而不是元素将为您的方法提供统一的方式。

最好的问候,亚历山大。

于 2012-09-28T19:54:36.993 回答