面向实体框架的问题插入到Db

时间:2015-08-28 10:01:51

标签: c# sql-server entity-framework entity-framework-6

我正在使用Entity Framework 6.1版本。

我正在DB上执行插入操作。我打算在Db中插入行列表。

任何人都可以建议最好的方法,因为我必须将批量记录插入Db。

这是我的代码:

 public void InsertData(List<TimingModel> modelList)
        {
            foreach (var model in modelList)
            {
                _dbContext.dbSet.Add(model);

            }
            _dbContext.SaveChanges();
        }

这是我的TimingModel

 public class Model
    {
       [DatabaseGenerated(DatabaseGeneratedOption.Computed)] 
        public int UID{get;set;}
        public string Application { get; set; }
        public string Service { get; set; }
        public string Call { get; set; }
        public string Verb { get; set; }
        public string API { get; set; }
        public string HttpResponse { get; set; }
        public DateTime StartTime { get; set; }
        public DateTime StopTime { get; set; }
        public int Duration { get; set; }
        public int SQLDuration { get; set; }
        public string Caller { get; set; }
        public string Nodename { get; set; }
        public string Server { get; set; }
        public string Logfile { get; set; }
        public string Product { get; set; }
        public string Session { get; set; }
        public int OrganisationUID { get; set; }
    }

下面是我的Mapper:

 public class TimingMapper: EntityTypeConfiguration<TimingModel>
    {
        public TimingMapper()
        {
            // Primary Key
            this.HasKey(n => n.UID);
           // Table & Column Mappings
            this.ToTable("Timing");

            this.Property(n => n.OrganisationUID).HasColumnName("OrgUID");

            }
    }

我得到以下例外:

  

对主键列具有属性的表的修改   不支持将“StoreGeneratedPattern”设置为“已计算”。使用   相反,“身份”模式。键列:'UID'。表:   'CodeFirstDatabaseSchema.model'。

有人可以建议吗?

1 个答案:

答案 0 :(得分:0)

感谢您的支持。

我想出了数据库表中的问题,列的大小较小。

在增加Database表中列的大小后,它得到了解决。