我遇到问题并且一直在敲我的头aginst墙...当我调用“dbReader = dbCommand.ExecuteReader()”时,我总是收到“使用未分配的本地变量” ;”它说使用未分配的本地变量'dbCommand'。请有人看看这个,并告诉我我在哪里做什么错了?先进的谢谢你。使用未分配的本地变量c#使用OleDbDataReader
public void computerList()
{
//Create SQL strings
string sql = "SELECT Computers FROM [Sheet1$]";
//Create the instances
OleDbConnection dbConnection;
OleDbDataAdapter dbAdapter;
OleDbCommand dbCommand;
OleDbDataReader dbReader;
DataTable dataTable;
//Call the instance
dbConnection = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.4.0;Data Source=Y:\\\\serverName\\Share\\document.xls;Extended Properties='Excel 12.0 Xml;HDR=YES'");
dbAdapter = new OleDbDataAdapter(sql, dbConnection);
dataTable = new DataTable();
dbConnection.Open();
dbReader = dbCommand.ExecuteReader();
while (dbReader.Read())
{
int iRow = dataTable.Rows.Count;
//MessageBox.Show("Count " + iRow.ToString());
//MessageBox.Show(dbReader.ToString());
for (int i = 0; i < iRow; i++)
{
int loopID = i;
string rowData = dataTable.TableName;
MessageBox.Show("Count" + loopID);
MessageBox.Show(dbReader.GetString(iRow));
}
}
//Close Connections
dbReader.Close();
dbConnection.Close();
}
当然你得到这个错误。你永远不会初始化'dbCommand'。 –
如果有疑问,请相信编译器错误真的*是*正确的... –
Jon Skeet ... Upvote! –