0

我有一个简单的实体类,如下所示:

[Table("Grade")]
public class Grade
{
    //Tried changing this annotation to Identity
    //[DatabaseGenerated(DatabaseGeneratedOption.None), Key]
    [Key]
    public int GradeId { get; set; }
    public string GradeName { get; set; }
}

我正在尝试使用 EF7 和 CSVHelper 为我正在工作的 DNX 5 项目播种,如下所示

using (StreamReader reader = new StreamReader(fs, System.Text.Encoding.UTF8, false)){
CsvReader csvReader = new CsvReader(reader);
IEnumerable<Grade> grades = csvReader.GetRecords<Grade>();

using (_context.Database.BeginTransaction()) 
{
_context.Database.ExecuteSqlCommand(@"SET IDENTITY_INSERT [dbo].[Grade] ON");
_context.Grades.AddRange(grades);
_context.SaveChanges();
_context.Database.ExecuteSqlCommand(@"SET IDENTITY_INSERT [dbo].[Grade] OFF");
}}

如果我注释 IDENTITY_INSERT OFF 的 using (_context.Database.BeginTransaction()) 行错误,尽管代码已编译

但是使用 BeginTransaction() 会出现以下错误

在此处输入图像描述

用于此项目的 CSV 文件(CSVReader 工作正常 - 返回所有列和数据,如下所示)

在此处输入图像描述

在此处输入图像描述

我可能做错了什么?

4

0 回答 0