我第一次使用LINQ,遇到了一個奇怪的問題。我正在使用MS SQL 2008.如果我更改了一行和SubmitChanges(),我可以看到SQL Server Management Studio中的更改,但是當我查詢用更新的信息填充我的dataGridViews時,我得到舊版本的數據。Linq to SQL:SubmitChanges無法正常工作後更新dataGridView
下面是我的數據的變化:
if (textBox1.Text.Length > 1)
{
var query = from eq in db.equipments
where eq.SerNo == serial
select eq;
foreach (equipment equip in query)
{
equip.Loc = textBox1.Text;
equip.Owner = "Evisive";
equip.Status = updatedStatus;
equip.SystemName = "";
}
db.SubmitChanges();
}
else
{
MessageBox.Show("Enter a Destination");
}
再次,部分作品(改變數據庫中的數據)。下面是我嘗試更新表格的部分(看似不起作用的部分):
public void Update_EquipmentGrid()
{
BindingSource b = new BindingSource();
b.DataSource = from eq in db.equipments
select eq;
dataGridView2.DataSource = b;
}
這是不是更新表格的正確方法嗎?
第一個建議似乎沒有任何效果,第二個禁用DataGridView的搜索功能。 – user1751215 2013-05-01 16:15:02
db.equipments的返回類型是什麼?它是否可枚舉<>? AutoGenerateColumns屬性是否也設置爲true? – 2013-05-01 16:19:24
不知道如何找到。當我將鼠標懸停在上面時,它被列爲System.Data.Linq.Table InventoryDataContext設備。是的,AutoGenerateColumns屬性爲true。 –
user1751215
2013-05-01 16:27:11