无法使用LINQ to SQL插入数据库

时间:2018-05-18 18:41:13

标签: c# linq linq-to-sql

我的应用程序中有按钮和网格视图,每当我单击此按钮时,我想将新记录添加到数据库并在网格视图中显示更新的表。但由于某些原因我无法添加,但当我再次单击此按钮时,它会显示'System.Data.Linq.DuplicateKeyException'。所以似乎它被添加为我的网格视图仍然是相同的,并且数据库中没有chagnes。

这是我的onclick方法:

private void button2_Click(object sender, EventArgs e)
        {
            database = new DataClasses1DataContext();
            dataGridView1.DataSource = database.Orders;
            Order order = new Order();
            order.Id = 32;
            order.units = 555;
            database.Orders.InsertOnSubmit(order);
            database.SubmitChanges();

            dataGridView1.DataSource = database.Orders;
        }

1 个答案:

答案 0 :(得分:0)

如果您的数据库中的订单获得ID上的主键,则无法添加具有相同ID的另一个订单。 然后改变你的订单.ID!

编辑: 让order.idnull并为您的主键添加自动增量 也许DB不会让你添加订单,因为他在Id上得到了一个值