C# c从数据表中选择列

C# c从数据表中选择列,c#,datatable,subset,C#,Datatable,Subset,编辑: 执行此操作时,我也会遇到相同的错误: var table = table.DefaultView.ToTable(false, "col1", "Col2"); 原职: 我想从DataTable中选择列的子集。因此,其他解决方案建议此解决方案: DataView view = new DataView(dataTable); DataTable dtQueryTable = view.ToTable(false, new string[] { "col1", "col2" });

编辑:

执行此操作时,我也会遇到相同的错误:

var table = table.DefaultView.ToTable(false, "col1", "Col2");
原职:

我想从DataTable中选择列的子集。因此,其他解决方案建议此解决方案:

DataView view = new DataView(dataTable); 
DataTable dtQueryTable = view.ToTable(false, new string[] { "col1", "col2" });
其中col1和col2是我要选择的列

然而,我得到了这个错误:列“col1”不属于基础表


这些列肯定存在。我缺少什么?

使用以下代码

var table = table.DefaultView.ToTable(false, "col1", "Col2");

使用以下代码

var table = table.DefaultView.ToTable(false, "col1", "Col2");

你可以简单地像下面这样做

更改了您帖子中的代码:

//testtable=anytablename

以下是更好理解的语法:

希望对您有所帮助,请告诉我您的想法和反馈 谢谢
karthik

您可以简单地执行以下操作

更改了您帖子中的代码:

//testtable=anytablename

以下是更好理解的语法:

希望对您有所帮助,请告诉我您的想法和反馈 谢谢
karthik

dataTable.DefaultView.ToTable做什么?您还可以使用.Copy on dataTable并使用.columns.RemoveCol3Tanks删除列。复制很有趣。但是我有50多个列,所以以这种方式删除48个列并不是很干净。只是要明确一点,您的DataTable中有名为col1和col2的列?是否尝试查看。ToTabletrue,col1,col2;?dataTable.DefaultView.ToTable做什么?您还可以使用.Copy on dataTable并使用.columns.Removecol3Thanks删除列。复制很有趣。但是我有50多个列,所以以这种方式删除48个列并不是很干净。只是要明确一点,您的DataTable中有名为col1和col2的列?是否尝试查看。ToTabletrue,col1,col2;?对不起,我应该说我也试过了,但是收到了相同的错误消息。对不起,我应该说我也试过了,但是收到了相同的错误消息。
public DataTable ToTable(
    string tableName,
    bool distinct,
    params string[] columnNames
)