使用英语阅读

通过


查询表达式语法示例:元素运算符 (LINQ to DataSet)

本主题中的示例演示如何使用 FirstElementAt 方法以便使用查询表达式语法从 DataRow 中获取 DataSet 元素。

这些示例中使用的 FillDataSet 方法在将数据加载到数据集中中指定。

本主题中的示例使用 AdventureWorks 示例数据库中的 Contact、Address、Product、SalesOrderHeader 和 SalesOrderDetail 表。

本主题中的示例使用下面的 using/Imports 语句:

using System;
using System.Collections.Generic;
using System.Data;
using System.Data.SqlClient;
using System.Globalization;
using System.Linq;
using System.Windows.Forms;

有关详细信息,请参阅如何:在 Visual Studio 中创建 LINQ to DataSet 项目

ElementAt

示例

此示例使用 ElementAt 方法检索 PostalCode == "M4B 1V7" 的第五个地址。

// Fill the DataSet.
DataSet ds = new DataSet();
ds.Locale = CultureInfo.InvariantCulture;
FillDataSet(ds);

DataTable addresses = ds.Tables["Address"];

var fifthAddress = (
    from address in addresses.AsEnumerable()
    where address.Field<string>("PostalCode") == "M4B 1V7"
    select address.Field<string>("AddressLine1"))
.ElementAt(5);

Console.WriteLine($"Fifth address where PostalCode = 'M4B 1V7': {fifthAddress}");

First

示例

此示例使用 First 方法返回名字为“Brooke”的第一个联系人。

// Fill the DataSet.
DataSet ds = new DataSet();
ds.Locale = CultureInfo.InvariantCulture;
FillDataSet(ds);

DataTable contacts = ds.Tables["Contact"];

DataRow query = (
    from contact in contacts.AsEnumerable()
    where (string)contact["FirstName"] == "Brooke"
    select contact)
    .First();

Console.WriteLine("ContactID: " + query.Field<int>("ContactID"));
Console.WriteLine("FirstName: " + query.Field<string>("FirstName"));
Console.WriteLine("LastName: " + query.Field<string>("LastName"));

请参阅


其他资源

文档