我正在尝试将SQL数据库中的表绑定到DataGridView控件。我想这样做,以便当用户在DataGridView中输入新的数据行时,记录会自动添加到数据库中。这是我目前的尝试......
BOMClassesDataContext DB = new BOMClassesDataContext();
Form_Load()
{
var mfrs = from m in DB.Manufacturers
select m;
BindingSource bs = new BindingSource();
bs.DataSource = mfrs;
dataGridView1.DataSource = bs;
}
dataGridView_CellValueChanged()
{
try
{
DB.SubmitChanges()
}
catch(Exception Ex)
{
MessageBox.Show(Ex.Message);
}
}
如果我点击底部的空行,它会自动用“0”而不是下一个未使用的值填充表格的ID(标识)列。如果我手动将该值更改为下一个可用值,那么它会添加新记录,但如果我将其保留为0则不会执行任何操作。我怎样才能解决这个问题?在我的LINQ to SQL类中,表的ID列将AutoGenerate属性设置为true。
答案 0 :(得分:1)
用户完成后需要执行DB.SubmitChanges()
。
使用Linq To SQL,在执行此操作之前,不会对基础数据库进行任何更改。