NET 水晶报表 填充到DataSet的问题

来源:百度知道 编辑:UC知道 时间:2024/06/07 05:51:27
一般情况下都是数据库读出数据FILL填充到DataSet,
但是,由于特例,我想直接使用现成的DataTable,DataSet.tables.add(DataTable)这种方式添加到DataSet中,但是不行。。。
想了下,应该是添加的结构可能和之前的DataSet中表的结构可能会有细微的差别
然后我使用
DataRow dr;
for (int i = 0; i < dt.Rows.Count; i++)
{
dr = ds.Tables["wow"].NewRow();
dr["StudyNo"] = dt.Rows[i]["StudyNo"].ToString();
dr["name"] = dt.Rows[i]["name"].ToString();
dr["ClassName"] = dt.Rows[i]["ClassName"].ToString();
}

的方法,循环每行添加到DATASET的原结构表中。。。但是也不行。。。

谁有解决方法???难道一定要Fill(ds,"wow")才行???
或者谁知道Fill的原理,我想了解一下。。。呵呵~~~
回复:貌似还是不行,(前提是DataTable1不是从ds里面取出的)这句话是什么个意思,我没看明白~

为了格式一致,我这样写:
for (int i = 0; i < ds.Tables.Count; i++)
{
ds.Tables.RemoveAt(i);
}

DataTable dtwow = new DataTable("wow");

for(int i = 0; i < ds.Tables.Count; i++)
{
ds.Tables.RemoveAt(i);
}

ds.Tables.Add(DataTable1);

这样看看.前提是DataTable1不是从ds里面取出的.

水晶报表的数据源也可以是DataTable我感觉是你使用的问题DataSet.tables.add(DataTable)也应该没问题的

少了一句,你只是赋值了,并没有ADD
应该加上ds.tables["wow"].Rows.Add(dr);
这样数据就填充进去了

有关java的问题,这里都有很详细的讲解,你可以参考一下,方法有很多
参考资料:http://www.baidu.com/s?wd=%B1%B1%B7%E7%CD%F8&rsv_bp=0&rsv_spt=3&inputT=131