1

将 Linq 和 EF 与 SQL 一起使用时,创建新的唯一共享密钥的正确方法是什么?

我可以在插入记录时使用 GUID,但我只希望我的密钥中包含 7 个数字或字符,因为它们将出现在我的 MVC 应用程序的 URL 中。如果这不是一个选项,或者使用 GUID 更好,请告诉我。

4

1 回答 1

0

如果您不需要跨机器边界的唯一键,那么我将使用bigint自动递增 1 的 /identity (这是默认值)。使用 EF 添加新实体时不必指定身份,它将自动分配。分配后,您可以将其用作 FK。

在我看来GUIDs,只有在您必须保证密钥在多个数据库中唯一时才有用,即您在一台机器 (A) 上创建它们的密钥并希望将数据传输到另一台机器 (B),保留密钥. 这对于密钥是不可能的,bigint因为机器 B 可能已经插入了具有相同密钥的其他数据。

于 2011-01-31T05:20:15.393 回答