2

我一直在寻找如何解决这个问题已经好几个小时了,但我似乎无法弄清楚。我想要做的是选择 1 个表的一部分并将其复制到一个临时表(我的应用程序需要一次与特定组一起工作)。当我尝试实现 CopyToDataTable() 方法时,我收到一条错误消息:

参数计数不匹配

它突出显示 ObjectSchredder.cs 文件(来自微软网站的文件)中的第 137 行。我的代码如下:

private void fillTempTable()
{
    IEnumerable<DataRow> tempResults = from row in sourceTable.AsEnumerable()
                                       where row.Field<String>("GroupID") == GetCurrentGroupName()
                                       select row;

    tempGroup = tempResults.CopyToDataTable<DataRow>(); //Everything seems to work until this line               
}
4

1 回答 1

3

您不需要CopyToDatatable适用于 Microsoft 为该类提供的任何类型(即使是匿名类型)的方法ObjectShredder。您正在DataRows从 a中选择DataTable,因此正常CopyToDataTable工作没有问题。它坐在教室里DataTableExtensionsSystem.Data.DataSetExtensions.dll

所以我认为这只是一个命名空间问题。using从动态扩展方法中删除CopyToDataTable并试试这个:

tempGroup = tempResults.CopyToDataTable();

如果这无助于重命名自定义CopyToDataTable<T>方法。

于 2013-07-09T14:20:18.863 回答