好的人!我被困在这里的一个问题,真的需要你的帮助。我有一个Winforms应用程序,它有几个选项卡。它连接到MS SQL Server 2008的数据库,并为我们展示了第一个选项卡上的DataGridView我们 连接到数据库:奇怪的行为
private void button_ConnectDB_Click(object sender, EventArgs e)
{
if (sqlConnection == null || sqlConnection.State != ConnectionState.Open)
sqlConnection = new SqlConnection(connectionString);
sqlConnection.Open();
try
{
dataAdapter = new SqlDataAdapter(queryStringUsers, sqlConnection);
SetConnectDBObjects();
SetConnectDBButtons();
}
catch
{
ShowUnableToConnect();
return;
}
}
,并有从DB一些信息:
private void button_SpecAcc_Click(object sender, EventArgs e)
{
dataGridView1.DataSource = this.usersBindingSource;
LoadData(ref dataAdapter, ref clientDataSet, TAB_USERS);
dataGridView1.ReadOnly = false;
},
其中LoadData实际上是:
private void LoadData(ref SqlDataAdapter dataAdapter, ref clientDataSet dataset, string table)
{ dataAdapter.Fill(dataset, table); }
我有dataAdapter直接连接到SQL Server,所以它的自动配置(所有操作,如INSERT,UPDATE,DELETE也)。和一切工作就好了(可以连接到数据库,进行任何操作,将其保存(通过应用按钮,使用适配器“S 更新法)),直到香港专业教育学院决定让另一个选项卡。 另一个标签应该得到我的信息从其他地方(我曾与连一些外接设备)(几行),进入它的DataTable,并从数据库中其他行MERGE这一切是此选项卡上按照本教程:。website
当我尝试MERGE一些行,我可以在我的DB好和良好的UPDATE看到,但在我的第一个标签(在表单上),我可以看到两个不同的行(之一,如果它WASN“T感动和第二 - 就好像是更新)。我认为这件事情与清爽(试过的GridView的清爽,没‘T帮助),或一些其他元素’S刷新(但哪一个?...),我仍然无法找到它。 希望得到任何帮助......感谢
现在找不到它,不幸的是..忘了提及,我重新运行应用程序后,我看到只有一行,因为它应该是。主要的问题是在运行时获得一行。 – Anton
或者如果我看我的第一个选项卡后,我开始计划和合并(启动程序,然后合并,然后连接并期待在DB第一个选项卡上),也它了就好了。只有当我合并之前连接,我看到这些幻影.. – Anton
追赶id到adapter.Fill方法的问题。它添加行而不是刷新它们。有人知道,如何避免这个问题? – Anton