我需要在两个数据表之间实现列移位功能。假设我有DataTable 1中的列{A,B,C}和DataTable 2中的{A}。将完整列从一个数据表移动到其他C#
如果我想将列{B,C}移动到DataTable 2,我该怎么做?两个表中的数据都应该类似。
如果数据表不是正确的选择,那么请帮我对我们如何才能做到这一点..
可以这样用列表来完成> - 嵌套列表?尝试下面的代码,但认为合并不是正确的选择。
private void move(DataTable source, DataTable dest, string colname)
{
var result = source.AsEnumerable().Select(row => row.Field<string>(colname));
dest.Columns.Add(colname);
DataTable dt = source.DefaultView.ToTable(false, colname);
dest.Merge(dt);
}
我是初学者,所以请建议是否有其他方式,我们可以根据用户选择移动列。
这看起来像一个复制列和复制数据的复杂工作。你有什么尝试?你在哪里被困住了? –
我尝试了下面 空隙ShiftColumn(数据表源,数据表DEST,串colname的) { 变种结果= source.AsEnumerable()选择(行=> row.Field(colname的)); dest.Columns.Add(colname); DataTable dt = source.DefaultView.ToTable(false,colname); pd.Merge(dt); } } –
我试着获取用户选择的列名,并使用linq查询来获取关于该列的数据,然后与目标表合并。猜猜合并在这里不是正确的选择。 。 空隙ShiftColumn(数据表源,数据表DEST,串colname的) { 变种结果= source.AsEnumerable()选择(行=> row.Field(colname的)); dest.Columns.Add(colname); DataTable dt = source.DefaultView.ToTable(false,colname); dest.Merge(dt); } } 我是初学者,所以请提出其他建议。 –