0

我正在尝试创建一个新实体并将其保存回数据库,但是我需要为 ID 列设置一个特定值。但是,当我调用 SaveChanges() 并生成插入语句时,尽管我在创建新实体并将新实体添加到当前上下文时指定了一个值,但它会自动生成一个新 ID。

如果有帮助,该列当前在 SSDL 和 CSDL 内容中将 StoreGeneratedPattern 属性设置为“Identity”(我已经在 XML 中的 .edmx 中检查了这一点)。

关于为什么会发生这种情况的任何想法?

4

1 回答 1

0

如果您的属性已StoreGenerationPattern设置为IdentityEF,则该值将始终在数据库中设置。你不能改变它。如果它有效,也意味着您的数据库已配置为自动为您生成 ID。

如果您想从应用程序中设置值,您必须StoreGeneratedPattern设置为None并且您的数据库绝不能生成该值。您每次都必须设置唯一键值。

于 2012-11-21T11:07:51.380 回答