好的 - 我终于在这个WPF表单中得到了我的连接字符串和sql字符串。我一直得到读者异常,直到我最终得到sql字符串正确的方式,所以因为我现在没有得到错误 - 我假设它是正确的。在IDbCommand处插入了断点并逐步完成,所有步骤似乎都没问题。但程序锁定并且不会在数据网格中显示任何数据。处理完所有语句后,甚至无法单击表单。我错过了什么? 这是Progress OpenEdge DB - 这是Progress的推荐连接和命令。
private void MonReadButton_Click(object sender, RoutedEventArgs e)
{
var estNum = EstTextBox.Text;
{
string connectString = "DSN=****;uid=**;pwd=*****;host=****;port=****;db=****;";
using (OdbcConnection dbConn = new OdbcConnection(connectString))
{
try
{
dbConn.Open();
}
catch (Exception)
{
MessageBox.Show("connection failed");
}
IDbCommand dbcmd = dbConn.CreateCommand();
string sqlstr = @"SELECT ""Estimate"".""Labor-Cost"" FROM ""GAMS1"".""PUB"".""Estimate"" WHERE ""Estimate"".""Estimate-ID""=" + estNum;
dbcmd.CommandText = sqlstr;
IDataReader reader = dbcmd.ExecuteReader();
while (reader.Read())
{
DataTable dt = new DataTable();
dt.Load(reader);
DataGrid1.ItemsSource = dt.DefaultView;
}
reader.Close();
reader = null;
dbcmd.Dispose();
dbcmd = null;
dbConn.Close();
}
}
}