LINQ on DataTable

本文关键字:DataTable on LINQ | 更新日期: 2023-09-27 18:20:13

我有一个相当令人困惑的问题。

我最近在VSWebDeveloper2008中获得了8个月前写的一些代码。我现在转到了2010年,所以我升级了这个项目,但除此之外还是一样的。由于下面的代码,它现在不会构建:

IMSDataSet.vwPartDataTable table = new IMSDataSet.vwPartDataTable();
        da.Fill(table);
        //Convert to Parts
        return table.Select<IMSDataSet.vwPartRow, Part>((row) => { return new Part(row); }).ToArray();

其中vwPartDataTable是使用Visual Studio中的数据集设计器创建的。现在看看SO,这似乎是不正确的代码,我需要一个AsEnumerable()。不管怎样,我部署了这段代码。这里有很多这样的线路,我到处都用过,所以它一定起作用了。

项目升级将所有内容都移到了.NET 4.0,但将其恢复到3.5没有任何效果。

任何人都能发光吗。我更愿意保持代码的原样,因为这就是客户所拥有的。

谢谢。

LINQ on DataTable

如果这是一个.Net 2.0功能,那么如果您采取这个流行的SO问题中描述的额外步骤,您就可以在Visual Studio 2010中针对该框架版本。

回答这个问题。我错误地安装了一些SQL组件。我在尝试打开.xsd(拖放数据表设计器)时遇到一个错误,涉及一个丢失的包。这归结为自定义工具生成的旧代码或基本代码不包括泛型支持,因此我使用的泛型LINQ函数不可用。

修复此问题需要卸载Visual Web developer和.NET 4,然后重新安装。我还单独安装了SQLServer2008R2express,而不是让VisualWebDeveloper(VWD)安装程序来完成。这也是我以前所做的。