日期:2014-05-19  浏览次数:20943 次

怎么检测dataset 中有几张表?
ataSet   ds   =   new   DataSet();
                       
                                       
                                                  SqlCommand   cmd   =   new   SqlCommand( "spTry1;spTry2;spTry3 ",   connsrc);

                                                  cmd.CommandType   =   CommandType.StoredProcedure;
                                                  cmd.ExecuteNonQuery();

                                                  SqlDataAdapter   adp   =   new   SqlDataAdapter(cmd);
                                                  adp.Fill(ds);
                                                  return(ds);


像这样把用三个不同的存储过程选出来的数据放到dataset中,那么dataset会创建三张表吗?
    而且如何看此时dataset中有哪几张表?
    如果存在有三张表,要如何引用dataset里的三张表?

------解决方案--------------------
ds.Tables.Count
------解决方案--------------------
可以通过索引或表名(前提你指定了表名)
ds.Tables[0]//第一张表
ds.Tables[3]//第三张表

楼主可以查看MSDN

------解决方案--------------------
使用 ds.Tables.Count
但填表的时候最好起名,方便调用
adp.Fill(ds, "tableName ");


ds.Tables[ "tableName "]
------解决方案--------------------
for (int i = 0; i < ds.Tables.Count; i++)
{
MessageBox.Show(ds.Tables[i].TableName);
}