实体框架 - 使用GUID作为EntityKey的SaveChanges

Mis*_*inq 9 entity-framework guid

我有一个SQL Server 2008数据库表使用uniqueidentifier作为主键.在插入时,使用newid()函数在数据库端生成密钥.

这适用于ADO.NET.但是当我将此表设置为Entity Framework 4模型中的实体时,就会出现问题.我能够很好地查询实体,但是在创建新实体并在上下文中调用SaveChanges()时,数据库上生成的uniqueidentifier全部为零.

我知道EF v1存在一个问题,即这种情况不起作用,需要在调用SaveChanges之前在客户端上创建GUID.但是,我曾在许多地方读到他们计划在EF 4中解决这个问题.

我的问题 - 在EF4中仍然不支持这种情况(DB端生成uniqueidentifier)吗?我们仍然坚持在客户端上生成GUID吗?

Mis*_*inq 6

谢谢你们,终于搞清楚了.在这里写下答案:

https://web.archive.org/web/20100518175148/http://leedumond.com/blog/using-a-guid-as-an-entitykey-in-entity-framework-4/

  • 微软有没有计划调整设计师来支持这个?打开.edmx文件充其量也很麻烦. (3认同)