在以下链接中:http: //msdn.microsoft.com/en-us/library/bb386921.aspx
“创建自定义 CopyToDataTable 方法”段落 > 示例
我试图做类似的事情。这是我的代码:
ObjDA = new OleDbDataAdapter(querySQL, conection);
//Create a DataSet object:
ObjDS = new DataSet();
ObjDA.Fill(ObjDS, "Table1");
DataTable MyTable = ObjDS.Tables["Table1"];
//IEnumerable<DataRow> query =
var query =
from user in MyTable.AsEnumerable()
where user.Field<string>("Name").StartsWith("c", true, null)
select new
{
Name = user.Field<string>("Name")
};
DataTable orderTable = query.CopyToDataTable();
问题出在“query.CopyToDataTable”中:没有隐式引用转换“AnonymoustType#1”到“System.Data.DataRow”。如果我写“选择用户”,它可以正常工作,但问题是:选择新的。
如果我写:
query = (...) as IEnumerable<DataRow>
查询总是返回 null。
我不知道该怎么办。