将多行插入数据库LINQ

时间:2017-04-12 22:15:01

标签: c# entity-framework linq entity-framework-5

我有一个foreach循环,遍历类型List<NewItem>的列表,创建一个新的NewItem实例,设置其属性,然后Add()项目到上下文是在执行SaveChanges()时插入:

foreach (var newItem in newItems)
{
    NewItem item = new NewItem 
    {
        User = newItem.User,
        Itemno = newItem.Itemno
    };

    db.NewItem.Add(item);

}

try
{
    db.SaveChanges();
}
catch (Exception e)
{
    Console.WriteLine(e);
}

我收到错误:

  

无法更新EntitySet&#39; NewItem&#39;因为它有一个   定义查询并且元素中不存在元素以支持   目前的运作。

为什么Add()方法实际上没有向我的数据库上下文添加任何内容?

1 个答案:

答案 0 :(得分:1)

如果目标数据库表没有主键,请添加一个。