1

我想构建一个 WCF 数据服务,它应该用于数据库后端的 CRUD 操作。为了识别数据库中对象的相关记录,我必须知道它是主键。我在我的数据库模式中使用代理键。

将代理键传递给调用者是否是一种好习惯,以便可以在后续调用中识别数据库中的记录?(调用者检索对象,调用者修改对象,调用者调用 WCF 更新方法)我知道代理键通常不应该在数据库之外使用。如果这不是一个好主意,我还有什么其他选择?

非常感谢任何建议。

4

2 回答 2

1

是的,您的解决方案是完全足够的。这是将 CLR 对象映射到持久实体的最简单方法。此外,您的服务的消费者可能会发现这个独特的标识符在编程 UI 时很有用,用于记录等目的。

我会毫不犹豫地走这条路。

于 2010-02-08T10:15:41.440 回答
0

我认为这一切都取决于你在谈论什么类型的数据。如果您谈论的是纯资源驱动的数据,那么公开代理键没有问题。但是,如果这是业务数据,您应该只公开业务密钥。它允许不相交的系统以通用方式进行对话。

于 2010-02-08T13:58:32.660 回答