如何在DataTable中使用LINQ?

Leo*_*nto 1 c# linq asp.net datatable lambda

我正在尝试使用LINQin,DataTable而我使用了Ntier作为解决方案,但是当我尝试使用LINQin 时却DataTable给了我一个错误:对不起,我的英语

Error   1   Cannot convert lambda expression to type 'string' because it is not a delegate type c:\users\ba-ojt\documents\visual studio 2010\Projects\GoActiveDirectory\PresentationTier\Default.aspx.cs    21  25  PresentationTier
Run Code Online (Sandbox Code Playgroud)

我该如何解决它以及如何使其成为lambda表达式?

我的代码:

protected void Page_Load(object sender, EventArgs e)
    {
        DataServiceReference.Service1Client newService = new DataServiceReference.Service1Client();
        DataTable dt = newService.GetAccounts();

        var query = from data in dt
                    select data;//Error Here

        Repeater1.DataSource = query;
        Repeater1.DataBind();

    }
Run Code Online (Sandbox Code Playgroud)

我的参考:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

using System.Data;
using System.Data.Entity;
Run Code Online (Sandbox Code Playgroud)

Ari*_*ion 5

AsEnumerable()像这样使用:

var query = from data in dt.AsEnumerable()
            select data;
Run Code Online (Sandbox Code Playgroud)

更新:然后可以从数据表中获取列,您可以这样做:

data.Field<YourType>("YourColumnName")
Run Code Online (Sandbox Code Playgroud)

参考: