0

我想为客户提供 WCF 服务将零件信息发送到我们的应用程序。我们有多个客户,他们将拥有一个或多个位置,并且零件信息的范围仅限于客户的每个位置。当客户致电我们的服务时,他们需要指定位置。

我们考虑过的选项是:

1) 在自定义标头中放置位置 ID。所有零件信息将适用于列出的所有位置。

2) 在消息正文中添加“上下文”节点。所有零件信息将适用于列出的所有位置。

3)在消息正文中添加一个位置节点,该节点将包含部分信息。每个位置都有自己的零件清单。

我正在寻找最佳实践/标准帮助来确定应该如何处理。我们将不得不创建具有客户/位置范围的其他服务,并希望以一致的方式处理此问题。

4

3 回答 3

1

我想说,如果只有一两个操作需要它,就让它成为数据契约的一部分——有点像让它成为方法调用的参数。如果每个操作都需要它,请将其放在标头中,因为它与用户名、角色、租户或其他身份验证信息一样多的上下文 - 有点像您放在请求上下文中的内容(例如,HttpContext)。

于 2008-10-30T00:03:32.687 回答
0

你需要使用消息合约吗?我使用数据契约,除非我需要流回一些东西,所以一切都只是在正文中结束。但是,即使对于消息合同,我也会将该信息放在正文中,我倾向于保留标头用于身份验证信息。

于 2008-09-26T14:38:18.950 回答
0

我们计划发送一份回复,其中包含处理摘要信息和有关任何无法处理的部分的详细信息。

消息契约有一个部分的集合,这些部分是在数据契约中定义的。消息合约中还有一个标志来控制部件集合的处理。这可能是也可能不是这个标志的正确位置。

于 2008-09-26T20:00:01.703 回答