当前位置: 代码迷 >> ASP.NET >> 没法找到表0
  详细解决方案

没法找到表0

热度:7109   发布时间:2013-02-25 00:00:00.0
无法找到表0
public DataTable GetDataTable(String SqlString)
{
DataSet dataset = GetDataSet(SqlString);
dataset.CaseSensitive = false;
return dataset.Tables[0];
}
提示红色标记的那一行出错,请高手指点!谢谢!

------解决方案--------------------------------------------------------
引用楼主 lsh050811214 的帖子:
public DataTable GetDataTable(String SqlString)
{
DataSet dataset = GetDataSet(SqlString);
dataset.CaseSensitive = false;
return dataset.Tables[0];
}
提示红色标记的那一行出错,请高手指点!谢谢!

------解决方案--------------------------------------------------------
你怎么知道返回的一定有呢?
if(dataset.Tables.Count>0)
{
return dataset.Tables[0];
}
return null;
PS:1楼,LZ这样写有何不妥?这只是个习惯的问题罢了。而且如果要查询的数据的确是多个TABLE呢?
------解决方案--------------------------------------------------------
探讨
你怎么知道返回的一定有呢?
if(dataset.Tables.Count>0)
{
return dataset.Tables[0];
}
return null;
PS:1楼,LZ这样写有何不妥?这只是个习惯的问题罢了。而且如果要查询的数据的确是多个TABLE呢?

------解决方案--------------------------------------------------------
探讨
你怎么知道返回的一定有呢?
if(dataset.Tables.Count>0)
{
return dataset.Tables[0];
}
return null;
PS:1楼,LZ这样写有何不妥?这只是个习惯的问题罢了。而且如果要查询的数据的确是多个TABLE呢?

------解决方案--------------------------------------------------------
因为GetDataSet(SqlString)没取到值,所以没有table----无法找到表0;推荐3楼写法

探讨
C# code
public DataTable GetDataTable(String SqlString)
{
DataSet dataset = GetDataSet(SqlString);
if(dataset == null || dataset.Tables.Count == 0 || dataset.Tables[0].Rows.Count == 0) return null;
dataset.CaseSensitive = false;
return dataset.Tables[0];
}
  相关解决方案