DataColumnCollection不包含Cast的定义

时间:2014-10-30 19:00:15

标签: c# casting datatable

为什么这个演员没有工作? table.Columns.Cast<DataColumn>()

using (SqlBulkCopy bcp = new SqlBulkCopy(conn))
{
    if (conn.State != ConnectionState.Open)
        conn.Open();

    bcp.DestinationTableName = destinationTable;

    //map the columns in the datatable to the sql table
    table.Columns.Cast<DataColumn>().ToList().ForEach(c => bcp.ColumnMappings.Add(c.ColumnName, c.ColumnName));
}

我以为我疯了,所以我试了一张测试表......同样的事情......

enter image description here

这是错误:

  

错误1&#39; System.Data.DataColumnCollection&#39;不包含&#39; Cast&#39;的定义和最好的扩展方法重载   &#39; System.Data.EnumerableRowCollectionExtensions.Cast(System.Data.EnumerableRowCollection)&#39;   有一些无效的论点

     

错误2实例参数:无法转换为&#39; System.Data.DataColumnCollection&#39;至   &#39; System.Data.EnumerableRowCollection&#39;

1 个答案:

答案 0 :(得分:4)

您必须在项目中添加System.Linq。 使用System.Linq;