小弟有个问题,大家帮帮忙啊,急,关于如果把DataSet中的列添加到一个DataTable中

myweiterry 2008-07-14 01:52:28
问题是这样的:
我要循环调用一个存储过程来返回一个DataSet
我每次要把循环返回的DataSet中的特定列,添加到一个新的DataTable中
最后返回这个DataTable

也就是说这个DataTable中的列是不固定的,是从DataSet中动态添加进来的


我的代码出错:(列“Section_Name”已属于另一个 DataTable。 )

public DataTable DtRows_Cells(string strProject_ID, int iStartYear, int iEndYear)
{
DataSet ds = null;
DataTable MainDt = new DataTable();
Database db = DatabaseFactory.CreateDatabase(strConnectionString);

using (DbConnection dbCon = db.CreateConnection())
{
dbCon.Open();

for (int i = iStartYear; i <= iEndYear; i++)
{
ds = db.ExecuteDataSet("GetProject_Sale", strProject_ID, i.ToString());
MainDt.Columns.Add(ds.Tables[0].Columns[0]);
}
}
return MainDt;
}
...全文
65 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
zld_baggio 2008-07-14
  • 打赏
  • 举报
回复
先建好表结构,然后再循环向表内添加记录。
chinaicm 2008-07-14
  • 打赏
  • 举报
回复


DataTable dt = new DataTable();
DataSet ds = new DataSet();
dt.Merge(ds.Tables[0],true,MissingSchemaAction.Add);


把ds.TableS[0]合并到dt里,如果dt里没有ds列,将进行添加列.
7仔 2008-07-14
  • 打赏
  • 举报
回复
dt.Columns.AddRange();这里的参数是DataColumn[]这个,你可以试一试
s208ping 2008-07-14
  • 打赏
  • 举报
回复
换中别的实现方式吧
yang_kun 2008-07-14
  • 打赏
  • 举报
回复
不能将同一列添加到两个DataTable中

DataColumn c = new DataColumn( "id ");
myDataTable1.Columns.Add(c);
//myDataTable2.Columns.Add(c); // error

// 创建一个新列
c = new DataColumn( "id ");
myDataTable2.Columns.Add(c);

yyq136 2008-07-14
  • 打赏
  • 举报
回复
MainDt.Columns.Add(ds.Tables[0].Columns[0]);
是想创建一个列吧,应该这样写
MainDt.Columns.Add(new DataColumn(ds.Tables[0].Columns[0]));

stning 2008-07-14
  • 打赏
  • 举报
回复
列的类型,大小,主键这些。明白了吗
stning 2008-07-14
  • 打赏
  • 举报
回复
也就是表的架构
stning 2008-07-14
  • 打赏
  • 举报
回复
你需要为新的DataTable生成列
myweiterry 2008-07-14
  • 打赏
  • 举报
回复
那怎么办说详细点
yagebu1983 2008-07-14
  • 打赏
  • 举报
回复
你的首先建立一个表的架构,
然后才能填数据啊!!
MainDt.Columns.Add(ds.Tables[0].Columns[0]);
你这句是干什么啊?
SuperManZ 2008-07-14
  • 打赏
  • 举报
回复
试试Copy() 一条条添加数据吧
SuperManZ 2008-07-14
  • 打赏
  • 举报
回复
不能这样直接添加另外一个datatable中的列。你可以认为datatable 就是一张存在数据库中的表。

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧