如何将IDENTITY_INSERT设置为ON?

时间:2014-07-22 15:07:44

标签: entity-framework entity-framework-4

我想为SocialSecurityNumber表格设置person密钥。 [Key]有效,但是这个键的值是由数据库生成的,我希望我的给定值保存在数据库中,所以我使用了 [DatabaseGenerated(DatabaseGeneratedOption.None)]。现在,当我尝试Add()数据时,我收到此错误。

enter image description here

那么如何使用Code First,Fluent API或Annotations将IDENTITY_INSERT设置为ON?

以下是我的模特课。

  public class Person
        {
            [Key, DatabaseGenerated(DatabaseGeneratedOption.None)]
            public int SocialSecurityNumber { get; set; }
            public string FirstName { get; set; }
            public string LastName { get; set; }

        }

1 个答案:

答案 0 :(得分:0)

问题已经解决了。在评论@Tim询问我是否使用过迁移。事实上,这是我在下一次尝试中没有采取的措施。我刚刚添加了另一个类,并没有将它设置为[KEY]而是使用完整注释[Key, DatabaseGenerated(DatabaseGeneratedOption.None)],我没有必要使用迁移,这很有效。由于之前的问题是由SocialSecurityNumber identity引起的,但现在使用此方法不再是identity,因此IDENTITY_INSERT(仍为OFF)不适用于此。我可以改变价值观 https://www.facebook.com/photo.php?fbid=278643422321981&set=a.118955391624119.1073741827.100005289761090&type=1&theater