【发布时间】:2014-04-07 10:10:05
【问题描述】:
为什么从 SqlDataReader 读取的数据不可用于方法调用? 我有一张桌子,里面有“id”作为列。 当我对数据库进行查询时,它会返回行。
此代码不起作用(说“id”列不存在):
con.Open();
SqlDataReader requestReader = cmd.ExecuteReader();
if (requestReader.HasRows)
{
DataTable requestTable = requestReader.GetSchemaTable();
request = ReadRequest(requestTable.Rows[0]);
}
con.Close();
虽然这个有效:
con.Open();
SqlDataReader requestReader = cmd.ExecuteReader();
if (requestReader.HasRows)
{
DataTable requestTable = requestReader.GetSchemaTable();
var requestRow = requestTable.Rows[0];
request = new Request();
request.UniqueId = (string)requestRow["id"];
}
con.Close();
【问题讨论】:
-
那不起作用的 ReadRequest 的代码是什么?
-
愚蠢的问题。就像蒂姆说的,即使是第二种方法也不起作用,但由于快速测试和代码结构,我没听懂。谢谢大家。
标签: c#-4.0 sqldatareader