Datatable不包含使用C2.0中的LinqBridge1.1的AsEnumerable的定义

Datatable不包含使用C2.0中的LinqBridge1.1的AsEnumerable的定义,linq,asenumerable,linqbridge,Linq,Asenumerable,Linqbridge,我试图在c2.0linqbridge中使用linq在我的数据库中搜索患者姓名, 但我得到了以下错误: System.Data.Datatable不包含AsEnumerable的定义 System.Data.Datatable不包含CopyToDataTable的定义 我将linqBridge.dll引用添加到我的项目中。 我用的是: 使用System.Linq List<string> names = name.Split(' ').ToList();

我试图在c2.0linqbridge中使用linq在我的数据库中搜索患者姓名, 但我得到了以下错误: System.Data.Datatable不包含AsEnumerable的定义 System.Data.Datatable不包含CopyToDataTable的定义

我将linqBridge.dll引用添加到我的项目中。 我用的是:

使用System.Linq

            List<string> names = name.Split(' ').ToList();
            SqlConnection con = new SqlConnection(m_connection_string);
            SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM PATIENT", con);
            DataSet ds = new DataSet();
            da.Fill(ds);

            var query =
            from pat in ds.Tables["PATIENT"].AsEnumerable().Where(c => names.All(val => c.PAT_SEARCH_NAME.Contains(val)))
            select pat;

            DataTable table = query.CopyToDataTable();
我做错了什么? 我已经读到LinqBridge1.1的这个版本不包含这个方法。。 有办法解决这个问题吗


谢谢。

您是否尝试将System.Data.DataSetExtensions dll添加到您的项目中?

要完成前面的回答,如果您无法使用Visual Studio添加对System.Data.DataSetExtensions的引用,我可以通过直接手动编辑库项目文件来实现。只需在现有引用之间插入适当的行:

<Reference Include="System.Data" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="System.Runtime.Remoting" />
使用DataTable而不是DataSet

在代码中,更改为:

DataTable ds = new DataTable();