当前位置:编程学习 > C#/ASP.NET >>

操作DataTable

    
            for (int id = 0; id < liststr.Count;id++ )
            {
                m_dtExpert = new DataTable[id];
                m_dtExpert[id].Columns.Add(id+""); //这句报错,索引超出了数组界限。
            }

索引 --------------------编程问答--------------------
for (int id = 0; id < liststr.Count;id++ )
            {
                m_dtExpert = new DataTable[id];
                m_dtExpert.Columns[id].Add(id+"");  
            }
--------------------编程问答-------------------- 不对,m_dtExpert没Columns --------------------编程问答-------------------- 实例化DataTable怎么还有个[id]???? --------------------编程问答--------------------    m_dtExpert.Columns.Add(id.ToString());   --------------------编程问答--------------------  m_dtExpert = new DataTable(id.ToString());
                m_dtExpert.Columns[id].Add(id+"");   --------------------编程问答-------------------- 我的意思是 创建多个Table 每个table都新建一个列
       m_dtExpert=new  DataTable[liststr.Count];
          foreach(DataTable ta in m_dtExpert)
          {
              ta.Columns.Add("11");  //还是不正确
          }
--------------------编程问答-------------------- m_dtExpert要先添加列,然后再根据列添加相应的值 --------------------编程问答-------------------- 吧datatable全部存在一个dataset里面,


DataSet ds=new DataSet();

for (int i = 0; i < 100; i++)
{
DataTable dt=new DataTable();
dt.TableName=i.ToString();
dt.Columns.Add(i.ToString());
ds.Tables.Add(dt);
}


获取某个datatable可以通过索引也可以通过table的名字


//通过索引
DataTable dt_temp = ds.Tables[88];
//通过名字
DataTable dt_temp = ds.Tables["88"];
--------------------编程问答--------------------
引用 6 楼 fan1009162291 的回复:
我的意思是 创建多个Table 每个table都新建一个列
       m_dtExpert=new  DataTable[liststr.Count];
          foreach(DataTable ta in m_dtExpert)
          {
              ta.Columns.Add("11");  //还是不正确
          }


那就用DataSet存DataTable --------------------编程问答-------------------- m_dtExpert[id-1].Columns.Add(id+"");
这样写,然后就会出现经典的错误:未将对象引用到实例 --------------------编程问答--------------------
  DataSet set = new DataSet();
                for (int i = 0; i < 10; i++)
                {
                    DataTable tab = new DataTable();
                    tab.Columns.Add("A");
                    set.Tables.Add(tab);
                }
--------------------编程问答--------------------
引用 10 楼 superliu1122 的回复:
m_dtExpert[id-1].Columns.Add(id+"");
这样写,然后就会出现经典的错误:未将对象引用到实例

我错了,从零开始的,还是超出范围...
补充:.NET技术 ,  C#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,