我有一个看起来像这样的序列:
CREATE SEQUENCE dbo.NextWidgetId
AS [bigint]
START WITH 100
INCREMENT BY 2
NO CACHE
GO
和一个看起来像这样的表:
CREATE TABLE [dbo].[Widget_Sequenced]
(
[WidgetId] [int] NOT NULL DEFAULT(NEXT VALUE FOR dbo.NextWidgetId),
[WidgetCost] [money] NOT NULL,
[WidgetName] [varchar](50) NOT NULL,
[WidgetCode] [int] NOT NULL,
[LastChangedBy] [int] NOT NULL,
[RowVersionId] [timestamp] NOT NULL,
CONSTRAINT [PK_Widget_Sequenced]
PRIMARY KEY CLUSTERED ([WidgetId] ASC) ON [PRIMARY]
) ON [PRIMARY]
有没有办法使用实体框架向该表结构添加新记录?
我尝试设置StoreGeneratedPattern
for WidgetId
to computed
我尝试过Identity
。两者都给了我错误。
我在 EF 5 中尝试过此操作。但如果它解决了此问题,我可以迁移到 EF 6。
从版本 6.2 开始,可以使用以下代码:
System.Data.Entity.SqlServer.SqlProviderServices.UseScopeIdentity = false;
更多信息:EF6 不适用于序列中的主键 https://github.com/aspnet/EntityFramework6/issues/165
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)