我正在尝试在LINQ
中使用DataTable
我使用Ntier作为我的解决方案,但是当我尝试在LINQ
中使用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
我该如何解决这个问题 以及它如何成为lambda表达式?
mycode的:
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();
}
MyReference:
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;
答案 0 :(得分:5)
像这样使用AsEnumerable()
:
var query = from data in dt.AsEnumerable()
select data;
更新: 然后从数据表中获取列,您可以这样做:
data.Field<YourType>("YourColumnName")
参考:
答案 1 :(得分:1)
试试这个:
var query = (from DataRow data in dt.Rows
select data).ToList();