【发布时间】:2011-04-04 01:05:24
【问题描述】:
我正在使用 LINQ 与 C#.NET 程序中的 DataSet 中的数据进行交互。数据从 XML 文件导入到数据集中,因此它是获取模式的地方。我希望能够从表中获取一行,然后以强类型方式(使用智能感知)访问该行的特定列。我想我在语法上很接近,但我不太明白。这是我到目前为止所拥有的......
// RunnerDataTable contains columns named FirstName, LastName, etc.
var OneRunner = RunnerDataTable().Single( p => p.Field<string>("FirstName") == "Jordan");
MessageBox.Show(OneRunner.LastName); // This doesn't work
这个例子确实有效,但我想在没有 foreach 循环的情况下这样做......
var SomeRunners= from f in RunnerDataTable.AsEnumerable()
where f.Field<string>("FirstName") == "Jordan"
select new { FirstName = f.Field<string>("FirstName"), LastName = f.Field<string>("LastName")};
foreach (var o in SomeRunners)
{
MessageBox.Show(o.FirstName + " " + o.LastName);
}
有什么想法吗?
【问题讨论】: